如何删除表单的验证

时间:2011-04-15 12:24:15

标签: jquery jquery-validate

我正在使用jQuery.validate插件来验证弹出窗口中带有动态值的表单。一旦用户点击提交表单的提交按钮错误。

用户点击取消后,如何撤消表单中显示的验证。

我使用了resetForm,但问题仍然存在,我在点击功能中使用了$("#form_id").validate()

2 个答案:

答案 0 :(得分:0)

如果要删除验证错误,则可以.remove()删除错误消息,然后从该字段中删除任何验证类

$('input.required').removeClass('required'); // no class == no future validation
$('label.error').remove();

如果要在整个表单上禁用验证,您也可以执行以下操作之一,但您仍然希望删除错误消息。

$("#form_id").validate().cancelSubmit = true; // add to click event

或者您可以在提交按钮

中添加cancel课程
<input class="cancel" type="submit" value="Submit form" />

或使用jquery $('#form_id input[type=submit]').addClass('cancel');

添加取消类

祝你好运!

答案 1 :(得分:0)

如果您只是想在取消按钮上重置验证,我倾向于使用以下JQuery.Validate

var resetFormOnClose = function ()
{
    $('.validation-summary-errors').removeClass('validation-summary-errors').addClass('validation-summary-valid');
    $('.field-validation-error')
                .removeClass('field-validation-error')
                .addClass('field-validation-valid');

    $('.input-validation-error')
                .removeClass('input-validation-error')
                .addClass('valid');
};

因此,当单击取消按钮时,我只需在事件处理程序中调用函数resetFormOnClose();

它的作用是查找error类的所有实例,并将其替换为valid类。

它也只是隐藏,通过添加有效的类,显示摘要信息的<ul></ul>(如果已启用它)