jquery验证.resetForm()不清除表单,验证消息在手动重置时触发

时间:2013-03-25 14:48:10

标签: javascript jquery jquery-plugins

我有几个按钮,将不同的参数传递给同一个功能。该函数最终将进行大量客户端处理,但首先需要进行验证。验证工作正常,但成功后,我需要重置表单。在下面的小提示中,您可以看到.resetForm()调用什么都不做,如果我手动清除该字段,它会抛出验证错误,就像我试图提交一样。

看我的小提琴:http://jsfiddle.net/uT6pw/10/

HTML:

    <form id="frm" method="post" onsubmit="return false;">
         <input type="text" id="FName" class="required">
         <span class="field-validation-valid" data-valmsg-for="FName" data-valmsg-replace="true"></span>    
         <button id="btn1" onclick="addContact('1')">1</button>
         <button id="btn2" onclick="addContact('2')">2</button>
         <button id="btn3" onclick="addContact('3')">3</button>
    </form>

的javascript:

function addContact(num){
    var v = $("#frm").validate()
    if (v.form())
    {
        v.resetForm();
        //$("#frm").validate().resetForm()
        $("#FName").val('');
    }
}

谢谢!

1 个答案:

答案 0 :(得分:1)

我没有听说过resetForm,试试这个:

form.reset();

更新:您有发布表单的按钮标记,这是单击它们时验证表单的原因。而是将<button>更改为<input type="button"/>

See fiddle