我在Razor中实现了一个.NET MVC表单,它使用客户端验证(jquery.validate.js和jquery.validate.unobtrusive.js)。我的表单有许多不同的字段是必需的,其格式是经过验证的。我在模型中使用数据注释来定义这一点。例:
[Required(ErrorMessage = "SSN is required")]
[RegularExpression(@"^\d{3}-\d{2}-\d{4}|\d{9}$", ErrorMessage = "SSN must be in the format 000-00-0000&
我想让我的表单转发到recaptcha,但只有在表单通过所有验证之后。在将用户详细信息保存到数据库之前,我如何实现这一点?
def create
@user = User.new(params[:user])
respond_to do |format|
if @user.save
#to recaptcha, but before save and only after sign up form passes validation
else
format.html { render :new }
当用户选择"GO“按钮时,我希望能够在客户端触发表单验证。当前,当选择"GO“按钮时,它不会验证完整的表单。例如,如果加载表单并选择"Go“按钮而不将焦点放在文本框中,则不会验证任何内容,val.Valid()将返回true。如果我确实在文本框中输入了无效数据,则会对该项进行验证;当我选择"GO“按钮时,val.Valid()返回false。
所以我要做的是,当用户选择一个按钮或其他事件时,我想要触发所有的表单验证。
我在MVC 3中做这个
public class TestValidationModel
{
[Required(ErrorMessage