$(this).index() 和 element.index(this) 之间的差异



我试图使用$(this).index()获取输入框的索引,但索引错误。

在谷歌中找到后,应用了$("input").index(this)并且它起作用了。很想知道这两种方法有什么区别,为什么以前的方法不起作用。

$(this).index()将返回相对于父元素的索引。

$("input").index(this) 根据调用 .index() 的元素集返回 pass 项的索引。

考虑这个 HTML

<table>
  <tr>
    <td>
      <input type="text">
    </td>
  </tr>
  <tr>
    <td>
      <input type="text">
    </td>
  </tr>
</table>

然后代码,

$("input").click(function() {
  alert($(this).index());
  alert($("input").index(this));
});
  • alert($(this).index());将始终提醒 0,因为它是并且只有其父 TD 的子元素。
  • alert($("input").index(this)); 将为第一个输入返回 0,为下一个输入返回 1。

查看此演示

相关内容

最新更新