我想清除表单中的所有输入和文本区域字段。当使用reset类的输入按钮时,它的工作原理如下:

$(".reset").bind("click", function() {
  $("input[type=text], textarea").val("");
});

这将清除页面上的所有字段,而不仅仅是表单中的字段。我的选择器看起来像什么形式的实际重置按钮生活?


当前回答

你们中的一些人抱怨无线电和诸如此类的默认“已检查”状态被清除…你所要做的就是将:radio,:复选框选择器添加到.not中,问题就解决了。

如果你不能让所有其他重置函数工作,这个可以。

改编自ngen的回答 函数form_reset (formID) { $(':输入',' # ' + formID) 另(‘:按钮’,‘:提交’,”:重置”,“:隐藏”,“:广播”,“:复选框”) .val ("); }

其他回答

为什么不使用document.getElementById("myId").reset();? 这是简单而漂亮的

如果有人还在阅读这篇文章,这里有一个最简单的解决方案,使用的不是jQuery,而是纯JavaScript。如果你的输入字段在表单中,有一个简单的JavaScript重置命令:

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

更多信息请点击这里: http://www.w3schools.com/jsref/met_form_reset.asp

干杯!

$(".reset").click(function() {
    $(this).closest('form').find("input[type=text], textarea").val("");
});

对于jQuery 1.6+:

$(':input','#myform')
  .not(':button, :submit, :reset, :hidden')
  .val('')
  .prop('checked', false)
  .prop('selected', false);

对于jQuery < 1.6:

$(':input','#myform')
  .not(':button, :submit, :reset, :hidden')
  .val('')
  .removeAttr('checked')
  .removeAttr('selected');

请看这篇文章: 使用jQuery重置多级表单

Or

$('#myform')[0].reset();

jQuery建议:

要检索和更改DOM属性,例如表单元素的选中、选中或禁用状态,请使用.prop()方法。

我有个最简单的重置姿势的技巧

jQuery("#review-form")[0].reset();

$("#review-form").get().reset();