禁用为特定提交按钮启用不显眼的验证

Ser*_*gii 6 asp.net-mvc submit button unobtrusive-validation

我有两个提交按钮返回,继续.单击"返回"时,如何禁用客户端验证.我试图将取消类添加到按钮属性,但它接缝没有帮助.

UPD.实际上这是取消课程.但是如果你动态添加它(通过javascript),它接缝不起作用.

Sky*_*ymt 14

我将事件处理程序附加到某些按钮,这些按钮改变了该特定表单上验证器对象的设置.

$(".jsCancel").click(function (e) {
    $(e.currentTarget).closest("form").validate().settings.ignore = "*"
});
Run Code Online (Sandbox Code Playgroud)

这在MVC3中对我来说就像是一种魅力.

我不知道这是否对你有所帮助,但由于我使用ajax表单,每次使用事件ajax成功替换ajax表单的内容时,我必须将事件附加到这些按钮.重新分析表单并将事件附加到取消按钮的完整代码是:

$(document).ajaxSuccess(function (event, xhr, settings) {
    var $jQval = $.validator, adapters, data_validation = "unobtrusiveValidation";
    $jQval.unobtrusive.parse(document);
    $(".jsCancel").click(function (e) {
        $(e.currentTarget).closest("form").validate().settings.ignore = "*"
    });
});
Run Code Online (Sandbox Code Playgroud)


tug*_*erk 3

使用 JavaScript 劫持按钮单击以提交表单。

这是 jQuery 的一个很好的例子:

$("#MyButton").click(function(e) { 

    //submit your form manually here
    e.preventDefault();
});
Run Code Online (Sandbox Code Playgroud)