我正在尝试检索整个表中某个表格单元格的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() doc,我尝试了多种东西,但总是返回-1。 我可以用循环来做这个,但我只是尝试用选择器来做。
这可能吗?
答案 0 :(得分:5)
$('.current').index('td');
应该这样做。
<强> jsFiddle example 强>
index()文档的关键部分是:
如果在元素集合和DOM元素上调用.index()或 传入jQuery对象,.index()返回一个指示的整数 传递元素相对于原始集合的位置。
因此,您需要传递一组元素,以便与之进行比较。
答案 1 :(得分:1)
请尝试这个::
$('td.current').index('td');
答案 2 :(得分:0)
尝试:
table = $('.current').parent().children('td');
$('.current').index(table);
修改强>
此方法与@ j08691相同,但只查看.selected
所在的表内部,以防同一页面上有更多表。否则@ j08691的答案会更好,因为它使用的代码更少。