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

我试过 $("#client.frm").reset();,但它不工作。那么如何通过 jQuery 重置窗体?

400287 次浏览

form.reset() 是一个 DOM 元素方法(不是 jQuery 对象上的方法) ,因此您需要:

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

或者没有 jQuery:

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

注意: 如果表单包含任何具有属性的字段,则复位()函数不起作用:

name='reset'

.reset()方法没有清除默认值和复选框字段,还有许多问题。

为了完全重置检查下面的链接-

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

纯 JS 解决方案 如下:

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;
}
}
}

使用 JavaScript 函数 reset():

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

你可以简单地做:

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

试试这个:

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

注意,如果表单中的某些输入标记具有 name='reset'属性,则函数 form.reset()将无法工作

清除表单如下所示

document.forms[0].reset();

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

试试这个代码。一个完整的解决方案为您的答案。

    <!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>

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

示例 Javascript:

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

示例 jQuery:

您可以尝试使用 trigger() 参考连结

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

你可以使用以下方法:

$('[element]').trigger('reset')

您可以使用 onclick 函数清除整个表单。

 <button type="reset" value="reset" type="reset" class="btnreset" onclick="window.location.reload()">Reset</button>

Reload ()函数将刷新页面并清除所有数据。

使用这个简单的技巧来重置窗体

_("form_id").reset();