日期:2014-05-16  浏览次数:20325 次

reset是js的方法,在jquery中使用应注意
今天copy之前的项目的部分代码到新项目时,遇到了$("#..Form").get(0).reset();这行代码,我一开始以为这是多次一举的,既然已经用ID选择器了,得到的肯定是一个Form了,而不是包含其他Form的数组了。所以直接写成$("#..Form").reset()不就完事了嘛。但我错了,我居然忽略了两点:
1.ID选择器的返回值类型是Array<Element>,也就是说也是数组形式的,虽然现在xhtml提倡的标准中,id是提倡唯一的,但jquery肯定是考虑到了兼容。
2.reset()是js中的方法,而我一直在把它当作jquery的方法使用。这里有一个注意:通过jquery中get(0)与eq(0)的返回值是不一样的,前者返回值是Element后者是jQuery,所以要先get(0)再reset(),如果先eq(0)再reset()是报错的。
1 楼 fanjianjun0608 2011-11-24  
果然是!我就没写get(0)之前没问题。后来莫名其妙的不好使了。后来看了你这文章。果然又好使了。