我想清除表单中的所有输入和文本区域字段。当使用reset类的输入按钮时,它的工作原理如下:
$(".reset").bind("click", function() {
$("input[type=text], textarea").val("");
});
这将清除页面上的所有字段,而不仅仅是表单中的字段。我的选择器看起来像什么形式的实际重置按钮生活?
我想清除表单中的所有输入和文本区域字段。当使用reset类的输入按钮时,它的工作原理如下:
$(".reset").bind("click", function() {
$("input[type=text], textarea").val("");
});
这将清除页面上的所有字段,而不仅仅是表单中的字段。我的选择器看起来像什么形式的实际重置按钮生活?
当前回答
这不会处理表单输入字段默认值为非空的情况。
应该可以工作
$('yourdiv').find('form')[0].reset();
其他回答
简单却很有魅力。
$("#form").trigger('reset'); //jquery
document.getElementById("myform").reset(); //native JS
让我们说,如果你想清除字段,除了accountType,在同一时间下拉框将被重置为特定的值,i。“所有”。其余字段应重置为空即文本框。这种方法将用于清除我们需要的特定字段。
$(':input').not('#accountType').each( function() {
if(this.type=='text' || this.type=='textarea'){
this.value = '';
}
else if(this.type=='radio' || this.type=='checkbox'){
this.checked=false;
}
else if(this.type=='select-one' || this.type=='select-multiple'){
this.value ='All';
}
});
下面的代码清除所有表单,它的字段将为空。如果页面有多个表单,而您只想清除特定的表单,请注明表单的id或类
$("body").find('form').find('input, textarea').val('');
使用Javascript,您可以简单地使用以下语法getElementById("your-form-id").reset();
你也可以通过调用重置函数来使用jquery $('#your-form-id')[0].reset();
记得不要忘记[0]。如果,您将得到以下错误
TypeError: $(…)。重置不是一个函数
JQuery还提供了一个可以使用的事件
$ (' # form_id ') .trigger(“重置”);
我试过了,成功了。
注意:需要注意的是,这些方法只会将表单重置为服务器在页面加载时设置的初始值。这意味着如果你的输入在你做随机改变之前被设置为值“set value”,那么在reset方法被调用后,该字段将被重置为相同的值。
希望能有所帮助
如果我想清除除accountType以外的所有字段,请使用以下方法
$q(':input','#myform').not('#accountType').val('').removeAttr('checked').removeAttr('selected');