jquery重置form表单

此篇文章用来防止自己屡次踩坑屡次忘的时候再掉头发。。。

由于JQuery中,提交表单是这样的:

$('#form1').submit();

所以每次想重置的时候就觉得是介样:

$('#form1').reset();

然后就会发现,不行!提示:$(...).reset is not a function

emmm,当然,其实可以用这样的方法:

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

但是!这跟页面整体风格看起来不搭呀,我岂会甘心,于是乎,我放弃了这个严谨的语句,坚强的用jquery实现表单重置。就是这样的:

$("#form1")[0].reset();

原因?原因就是,其实是通过了dom中的reset方法实现了重置,嗯,可以

所以,我下次应该会第一时间想起来它的,吧

当然,这只是重置表单的方法,也就是说恢复的是表单最初初始化的样子。如果要清空表单里的输入值,可以这样:

//要不要屏蔽掉hidden类型,可以根据实际情况
$(':input','#form1') 
.not(':button, :submit, :reset, :hidden') 
.val('') 
.removeAttr('checked') 
.removeAttr('selected');

这样符合大部分情况了,如果有特殊元素的话,就单独清一下。

 

over

 

你可能感兴趣的:(jQuery)