如何通过JavaScript重置(清除)表单?

我试过$("#client.frm").reset(); 但它不工作。所以如何通过jQuery重置表单?

form.reset()是一个DOM元素方法(不是jQuery对象上的一个方法),所以你需要:

 $("#client.frm")[0].reset(); //faster version: $("#client")[0].reset(); 

或者没有jQuery:

 document.getElementById("client").reset(); 

你可以简单地做:

$("#client.frm").trigger('reset')

纯JS解决scheme如下:

 function clearForm(myFormElement) { var elements = myFormElement.elements; myFormElement.reset(); for(i=0; i<elements.length; i++) { field_type = elements[i].type.toLowerCase(); switch(field_type) { case "text": case "password": case "textarea": case "hidden": elements[i].value = ""; break; case "radio": case "checkbox": if (elements[i].checked) { elements[i].checked = false; } break; case "select-one": case "select-multi": elements[i].selectedIndex = -1; break; default: break; } } } 

请注意,函数form.reset()将不起作用,如果在窗体中的某些input标签有属性name='reset'

,reset()方法不会清除默认值和checkbox字段,还有更多的问题。

为了彻底复位检查下面的链接 –

http://www.javascript-coder.com/javascript-form/javascript-reset-form.htm

尝试这个 :

 $('#resetBtn').on('click', function(e){ e.preventDefault(); $("#myform")[0].reset.click(); } 

通过JavascriptjQuery重置(清除)表单:

示例Javascript:

 document.getElementById("client").reset(); 

示例jQuery:

你可以尝试使用trigger() 引用链接

 $('#client.frm').trigger("reset"); 

使用JavaScript函数reset()

 document.forms["frm_id"].reset(); 

试试这个代码。 完整的答案

  <!DOCTYPE html> <html> <head> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> <script> $(document).ready(function(){ $(":reset").css("background-color", "red"); }); </script> </head> <body> <form action=""> Name: <input type="text" name="user"><br> Password: <input type="password" name="password"><br> <button type="button">Useless Button</button> <input type="button" value="Another useless button"><br> <input type="reset" value="Reset"> <input type="submit" value="Submit"><br> </form> </body> </html> 

清除表格如下

 document.forms[0].reset(); 

您可以简单地清除组中的表单元素。 通过使用这种forms[0]