JQuery Validation Plugin提交Handler对我不起作用

时间:2013-08-21 09:52:08

标签: javascript jquery html5 css3 jquery-validate

您好我得到以下问题我的以下代码对我不起作用,我无法弄清楚原因。我希望你们能帮助我。

编辑:提交处理程序根本不会被调用。我甚至没有得到警报信息。我想禁用提交按钮,直到表单被验证。

    $('form').validate({

        onsubmit: true,
        debug: true,
        errorLabelContainer: "#errorBox",
        rules: {
            user_email: {
                minlength: 4,
                email: true,
                required: true
            },
            user_textField: {
                minlength: 3,
                required: true
            },
            user_phone: {
                required: true,
                number: true,
                minlength: 4
            },
            user_fax: {
                number: true,
                minlength: 4
            },

            user_plz: {
                required: true,
                number: true,
                minlength: 5
            }
        },
        submitHandler: function (form) {
            $('form').find(":submit").attr("disabled", true).attr("value","Submitting...");
            alert("hie");
            form.submit();
        }
    }); 

我还有一个提交按钮:

<button class="btn btn-primary pull-right continuePaymentProcess" type="submit">Weiter</button>

最诚挚的问候格兰迪

2 个答案:

答案 0 :(得分:5)

您不需要onsubmit: true行,因为这是默认行为。 重要as per docs

  

在提交时验证表单。设置为false以仅使用其他事件进行验证。设置为函数以自行决定何时运行验证。 布尔值true不是有效值。

换句话说,您必须删除该行,因为true会破坏该插件。

submitHandler“无效”而言,它按照文档的规定运行。当表单有效时,submitHandler回调函数会触发

你说,“我想禁用提交按钮,直到表单被验证。”

由于submitHandler在表单为valid之前不会被触发,因此在表单验证完成后, 之后才会触发禁用该按钮的代码。

查看您的代码:http://jsfiddle.net/aDAGL/

答案 1 :(得分:0)

我也遇到了同样的问题。请检查表单中的所有输入元素,并提供&#34; name&#34;属性为所有元素。这有助于我的情况。

谢谢