禁用后重新启用 jQuery 验证
Re-enable jQuery validation after disabled
我有一个 MVC 项目,我在其中使用带有 jquery.validate.js 和 jquery.validate.unobtrusive.js 的数据注释的内置验证。这一切正常,我的表格将通过验证。
在一个表单上,我有一个 post 代码查找按钮,因此我通过向按钮添加 formnovalidate
属性来使用建议来禁用对此按钮的验证。这也很好用,并允许我提交表单以使用 ajax.
进行我的 post 代码查找
单击此按钮后,我可以单击主提交按钮,它将 post 表单不进行任何验证。
我查看了 jquery.validate.js 文件,发现使用以下代码取消了验证:
// allow suppressing validation by adding the html5 formnovalidate attribute to the submit button
if ( $(event.target).attr("formnovalidate") !== undefined ) {
validator.cancelSubmit = true;
}
然后我可以通过在后面添加这个来重新启用它:
if ( event.target.id == 'submit' ) {
validator.cancelSubmit = false;
}
但是我不想更改源文件,就好像我使用 nuget 进行更新一样,我可能会忘记我已经更改了该文件并且忘记将该行放回原处。
我如何将 validator.cancelSubmit = false;
绑定到按钮点击 - 像这样的东西(因为我没有 validator
对象所以不会工作):
$('#submit').on('click', function() {
validator.cancelSubmit = false;
});
我试过使用 $.validator.cancelSubmit = false;
但这没有用
您可以使用 data()
访问 validator
对象:
$(yourForm).data('validator').cancelSubmit = false;
我有一个 MVC 项目,我在其中使用带有 jquery.validate.js 和 jquery.validate.unobtrusive.js 的数据注释的内置验证。这一切正常,我的表格将通过验证。
在一个表单上,我有一个 post 代码查找按钮,因此我通过向按钮添加 formnovalidate
属性来使用建议来禁用对此按钮的验证。这也很好用,并允许我提交表单以使用 ajax.
单击此按钮后,我可以单击主提交按钮,它将 post 表单不进行任何验证。
我查看了 jquery.validate.js 文件,发现使用以下代码取消了验证:
// allow suppressing validation by adding the html5 formnovalidate attribute to the submit button
if ( $(event.target).attr("formnovalidate") !== undefined ) {
validator.cancelSubmit = true;
}
然后我可以通过在后面添加这个来重新启用它:
if ( event.target.id == 'submit' ) {
validator.cancelSubmit = false;
}
但是我不想更改源文件,就好像我使用 nuget 进行更新一样,我可能会忘记我已经更改了该文件并且忘记将该行放回原处。
我如何将 validator.cancelSubmit = false;
绑定到按钮点击 - 像这样的东西(因为我没有 validator
对象所以不会工作):
$('#submit').on('click', function() {
validator.cancelSubmit = false;
});
我试过使用 $.validator.cancelSubmit = false;
但这没有用
您可以使用 data()
访问 validator
对象:
$(yourForm).data('validator').cancelSubmit = false;