jQuery验证插件:禁用指定提交按钮的验证

jQuery验证插件:禁用指定提交按钮的验证

我有一个包含多个字段的表单,我正在用J rn Zaeffere的出色的jQuery验证插件来验证(有些是为自定义验证添加的方法)。如何使用指定的提交控件规避验证(换句话说,使用一些提交输入进行火验证,但不使用其他的火验证)?这与具有标准ASP.NET验证器控件的ValidationGroups类似。

我的处境:

它与ASP.NET WebForms一起使用,但如果您愿意,可以忽略它。然而,我将验证更多地用作“推荐”:换句话说,当表单提交时,验证会触发,而不是“必需”消息显示,“推荐”显示的是“您错过了以下字段…您想继续吗?”在错误容器中,现在可以看到另一个Submit按钮,它可以被按下,它将忽略验证并以任何方式提交。如何绕过这个按钮控件的表单.Value(),然后仍然发布?

买和卖房子的样品http:/jquery.bassistance.de/有效性/演示/多部分/允许这样做,以便访问前面的链接,但它通过创建自定义方法并将其添加到验证器来实现。我希望不必创建自定义方法复制已经在验证插件中的功能。

下面是我现在得到的可立即应用的脚本的简短版本:

var container = $("#<%= Form.ClientID %> div.validationSuggestion");$('#<%= Form.ClientID %>').validate({          
    errorContainer: container,
    errorLabelContainer: $("ul",container),
    rules: {
        <%= YesNo.UniqueID %>: { required: true },
        <%= ShortText.UniqueID %>: { required: true } // etc.

    },
    messages: {
        <%= YesNo.UniqueID %>: 'A message.',
        <%= ShortText.UniqueID %>: 'Another message.' // etc.
    },
    highlight: function(element, errorClass) {
        $(element).addClass(errorClass);
        $(element.form).find("label[for=" + element.id + "]").addClass(errorClass);
        $(element.form).find("label[for=" + element.id + "]").removeClass("valid");
    },
    unhighlight: function(element, errorClass) {
        $(element).removeClass(errorClass);
        $(element.form).find("label[for=" + element.id + "]").removeClass(errorClass);
        $(element.form).find("label[for=" + element.id + "]").addClass("valid");
    },
    wrapper: 'li'});


慕田峪4524236
浏览 603回答 3
3回答

慕婉清6462132

其他(无证件的)方法是打电话给:$("form").validate().cancelSubmit&nbsp;=&nbsp;true;

狐的传说

您可以添加一个css类cancel到“提交”按钮以抑制验证。例如<input&nbsp;class="cancel"&nbsp;type="submit"&nbsp;value="Save"&nbsp;/>请参阅这里的jQueryValidator文档:在提交时跳过验证编辑:已不再推荐上述技术,并将其替换为formnovalidate属性。<input&nbsp;formnovalidate="formnovalidate"&nbsp;type="submit"&nbsp;value="Save"&nbsp;/>
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JQuery