javascript - jquery 数字验证工作不一致

标签 javascript jquery jquery-validate

我在表单中使用 jquery 验证。我没有遇到很多问题,但是我确实在用户表单中遇到了问题,其中 jquery 数字验证未触发。我在 IE、Firefox 和 Chrome 中测试了它,但它在其中任何一个中都不起作用。奇怪的是,到目前为止,它似乎是特定于这个用户的表单的,因为当我转到其他用户表单时,警报会正常触发,就像我在所有浏览器上进行的测试一样。我想知道是否有人在使用 jquery 验证之前遇到过这个问题。下面是我正在使用的一些 jquery 验证代码的示例。

    var validator = $("#educationForm").validate({
            debug: true,
            errorElement: "span",
            errorClass: "help-block errortext",
            errorPlacement: function (error, element) {
                element.before(error);
            },
            success: function (label) {
                label.remove();
            },
            rules: {
                school1GPA: {
                    number: true
                },
                school2GPA: {
                    number: true
                },
                school1Units: {
                    number: true
                },
                school2Units: {
                    number: true
                },
            },
            onsubmit: false
        });

    $('.form-actions').on('click', '#btnSubmit', function (evt) {
            evt.preventDefault();
            if ($("#educationForm").valid()) {

                $.ajax({
                    type: "POST",............
        } else {
           validator.focusInvalid();
        }
    });

最佳答案

问题是您在触发 jquery 验证之前就触发了 evt.preventDefault()。这基本上会杀死 evt.preventDefault() 之后的任何验证语句。您只需调用 $("#educationForm").valid()jquery.validate(),然后调用 evt.preventDefault().

 $('.form-actions').on('click', '#btnSubmit', function (evt) {

            if ($("#educationForm").valid()) {
                evt.preventDefault(); // prevents the form submission to allow ajax
                $.ajax({
                    type: "POST",............
        } else {
           validator.focusInvalid();
        }
});

关于javascript - jquery 数字验证工作不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33616860/

相关文章:

javascript - 为什么在 AngularJS 中总是使用匿名函数

javascript - 在php中显示基于特定日期名称的单选按钮

javascript - 验证与 dropzone 的组合范式

javascript - Angular ngStyle 带有 ngIf 的动态样式元素

javascript - 保存 SVG,背景图像被遗漏

Javascript 文件引用问题(使用 jQuery)

asp.net-mvc-3 - 如何进行不显眼的验证以清除电子邮件输入所需的验证?

javascript - jQuery 验证插件和输入文件的问题

javascript - Jquery 表单获取默认值

jquery - 如何通过CSS属性jQuery获取img