使用Unobtrusive Validation时,jQuery Validate未执行

我正在使用ASP.NET MVC,我有jQuery,jQuery验证,jQuery validate.config,jQuery验证不引人注目,不显眼的ajax和我的包中的其他库.我的页面中有一个表单,里面有一些字段.它有一个按钮类型按钮,当用户点击按钮我正在尝试做一些东西,然后做一个$(form).submit(),我希望它被jQuery验证方法中的submithandler拦截而不是提交表单,它将在我的服务器上发一个ajax帖子.我想使用jQuery.validate方法的原因是我在表单中有很多条件必需字段和其他验证.但由于某种原因,jQuery验证根本没有执行/触发,表单被提交而不是被提交处理程序拦截.如果我正确设置一切,我不知道为什么它不起作用.这是我对jQuery验证方法调用.我从来没有看到警报说好.
$('form[name="submitCheckoutForm"]').validate({
    debug: true,rules: {
        "Password": {
            required: true
        }
    },submitHandler: function (form) {
        //actions.SubmitCheckout();
        alert('is good');
        return false;
    }
});

解决方法

如果您使用的是Unobtrusive Validation插件,那么您也不能调用jQuery Validate的.validate()方法.

为什么?

> Unobtrusive Validation插件根据表单中的各种数据属性自动构造.validate()方法.> jQuery Validate插件不允许在同一表单上多次调用.validate()方法.因此,由于您已经使用Unobtrusive Validation来构造.validate(),因此将完全忽略对.validate()的其他调用.

相关文章

jQuery插件的种类 1、封装对象方法 这种插件是将对象方法封装起来,用于对通过选择器获取的jQuery对象进...
扩展jQuery插件和方法的作用是非常强大的,它可以节省大量开发时间。 入门 编写一个jQuery插件开始于给...
最近项目中需要实现3D图片层叠旋转木马切换的效果,于是用到了jquery.roundabout.js。 兼容性如图: ht...
一、什么是deferred对象? 开发网站的过程中,我们经常遇到某些耗时很长的javascript操作。其中,既有异...
AMD 模块 AMD(异步模块定义,Asynchronous Module Definition)格式总体的目标是为现在的开发者提供一...