做了个复杂查询的页面,字段太多了,填了一次,想清空挺麻烦的
$('#myform')[0].reset();
虽然reset方法可以做到一部分,但是如果你有个元素是这样的
<input value="50"/>
那么点击reset只会还原成50
于是乎,有了以下方法,网上浏览过来,
$(':input','#myform')
.not(':button, :submit, :reset, :hidden')
.val('')
.removeAttr('checked')
.removeAttr('selected');
It is using the :input
selector which will match all input, textarea, select and button elements. Since we are passing #myform
as the second argument, it will only find inputs inside this form
element. Then it filters out all buttons, submits, resets and hidden
inputs using not()
. Then it is using val()
to set the value of the remaining fields to an empty string, and then it uses removeAttr
to remove the checked
and selected
attribute of the fields in case you have any radio/checkbox/select inputs. Tada.
很强大,包括了所有的情况