使用 jQuery 清除表单字段

新手上路,请多包涵

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

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

这将清除页面上的所有字段,而不仅仅是表单中的字段。对于实际重置按钮所处的形式,我的选择器看起来如何?

原文由 tbuehlmann 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 450
2 个回答
$(".reset").click(function() {
    $(this).closest('form').find("input[type=text], textarea").val("");
});

原文由 ShaneBlake 发布,翻译遵循 CC BY-SA 3.0 许可协议

对于 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');

请看这篇文章: Resetting a multi-stage form with jQuery

或者

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

正如 jQuery 建议 的那样:

要检索和更改 DOM 属性,例如 checkedselecteddisabled 元素的状态方法 ()

原文由 ngen 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题