0

我正在尝试检索整个表格中某个表格单元格的 ID。

例子

<table>
  <tr>
    <td>1</td>
    <td>2</td>
    <td>3</td>
  </tr>  
  <tr>
    <td>4</td>
    <td class="current">5</td>
    <td>6</td>
  </tr>
</table>

我正在尝试获取的索引td.current<tr><table>

所以,而不是简单地做

$('td.current').index() 

这将输出 1,我需要它输出 4(整个表中的第 5 个 td)。

阅读index() 文档,我尝试了多种方法,但它总是返回 -1。我可以用循环来做到这一点,但我试图只用选择器来做到这一点。

这可能吗?

4

3 回答 3

5

$('.current').index('td');应该这样做。

jsFiddle 示例

index() 文档的关键部分是:

如果在元素集合上调用 .index() 并传入 DOM 元素或 jQuery 对象,则 .index() 返回一个整数,指示传递的元素相对于原​​始集合的位置。

因此,您需要传入一组元素以进行比较。

于 2013-03-18T17:11:07.883 回答
1

请试试这个::

$('td.current').index('td');
于 2013-03-18T17:12:59.610 回答
0

尝试:

table = $('.current').parent().children('td');
$('.current').index(table);

编辑:

此方法与@j08691 的方法相同,但它只查看里面的表格,.selected以防同一页面上有更多表格。否则@j08691 的答案会更好,因为它使用的代码更少。

于 2013-03-18T17:11:43.137 回答