5

我正在使用jQuery Form Wizard 3.0.4 插件进行多步骤注册过程。它使用内置的 jQuery 验证器插件,在逐步进行时工作正常。编辑:这意味着我已经在使用validationEnabled:true、formOptions 和validationOptions,这些都在工作。我需要在常规功能之外运行相同的验证。

问题是我需要运行验证器并在两点手动显示错误。对于我拥有的特殊领域,并且在 AJAX 提交之前。我尝试了以下方法,但什么也没做:

$("#registrationForm").validate();  

进入下一步时,表单向导脚本 (jquery.form.wizard-3.0.4.js) 似乎正在执行此操作:

this.element.validate().focusInvalid();

所以我尝试了这个,它也没有做任何事情:

$("#registrationForm").element.validate().focusInvalid();

有任何想法吗?

  1. 如何运行单击下一步时发生的相同验证?
  2. 我将如何调用一个函数来验证和显示特定字段的错误?
4

2 回答 2

4

我认为下面的示例代码可能对您有用,当单击 id="validate_form" 的按钮或元素时触发验证。这基本上是用户单击下一步时(在插件中)运行的代码。

    $(function(){
        $("#validate_form").click(function(){ // when the button is clicked...
            var wizard = $("#demoForm"); // cache the form element selector
            if(!wizard.valid()){ // validate the form
                wizard.validate().focusInvalid(); //focus the invalid fields
            }

        })
    })

如果您只需要验证一个输入字段,那么您可以使用以下代码(在这种情况下单击 id="validate_email" 的按钮):

    $(function(){
        $("#validate_email").click(function(){ // when the button is clicked...
            var wizard = $("#demoForm"); // cache the form element selector
            if(!wizard.validate().element( "#myemail" )){ // validate the input field
                wizard.validate().focusInvalid(); // focus it if it was invalid
            }

        })
    })

希望这可以帮助。

/一月

于 2011-02-05T17:34:09.343 回答
0

你看过插件的文档吗?设置中有一个简单的开关,可以让您在定义表单向导时进行这种验证。

http://thecodemine.org/#_demoForm=first

然后单击“选项”并查看“validationEnabled”以启用验证,然后查看“validationOptions”以设置您的选项。

于 2011-01-21T19:04:05.053 回答