0

使用 jQuery 验证插件 (http://docs.jquery.com/Plugins/Validation/validate) 时:

我想要以下行为:用户按下提交后立即验证(而不是实际提交,我使用的是 ajax 发布请求)。

但是会发生以下情况:一旦按下提交,验证就会运行,如果适用,我会收到验证错误,然后当我更正错误并按下提交时,表单会重新验证,但是当没有验证错误时,没有制作ajax帖子,只有表单得到验证。

当第一次没有验证错误时,会立即发布帖子,就像它应该的那样。

我有以下内容:

    <script type="text/javascript">
        $(document).ready(function(){ 
            $("#form").validate({
                onkeyup: false,
                onclick: false,
                onsubmit: true,
                rules: {
                    telNR: {
                        required: true,
                        digits: true,
                        minlength: 10
                    }
                },
                messages: {
                    telNR: {
                        required: "Fill in a valid telephone NR",
                        minlength: "A telephoneNR is 10 characters long",
                        digits: "Use only numerics"
                    }
                },
                submitHandler: function(form) {
                    var jqxhr = $.post("sendMail.php", { telNR: $("#telNR").val() },
                    function(data) {
                        alert("Done");
                    })
                    .error(function(jqXHR){
                        alert("Error");
                    });
                }    
            });
        })
    </script>
4

1 回答 1

0

您可能遇到了一些幽灵验证错误。尝试将以下内容添加到您的选项中以清除表单焦点上的错误:

focusCleanup: true
于 2012-09-17T18:33:42.887 回答