我有一张表,其中每个tr
都是一条记录,每个td
都是一列。当我使用click
事件并点击tr
时,我需要tr
个ID和第6列td
ID。
应将tr
和td
id分配给变量。
如何使用jQuery选择器执行此操作?
这是对的吗?
$(‘tr td).(‘click’, function (
{
});
任何帮助将不胜感激。我也尝试了这个:
$('tr td:nth-child(5)')
......但它没有用。
答案 0 :(得分:0)
var row = $(this).closest('tr');
var cell = row.find('td:nth-child(6)');
请注意:nth-child()是基于1的,而不是基于0的,所以请使用(6)。
我发布的iPad不适用于代码片段,否则我会给你一个更完整的解决方案!
答案 1 :(得分:0)
HTML:
<table border="1">
<tr id="row1">
<td id="a1">A1</td>
<td id="b1">B1</td>
<td id="c1">C1</td>
<td id="d1">D1</td>
<td id="e1">E1</td>
<td id="f1" class="sixth">F1</td>
</tr>
<tr id="row2">
<td id="a2">A2</td>
<td id="b2">B2</td>
<td id="c2">C2</td>
<td id="d2">D2</td>
<td id="e2">E2</td>
<td id="f2" class="sixth">F2</td>
</tr>
<tr id="row3">
<td id="a3">A3</td>
<td id="b3">B3</td>
<td id="c3">C3</td>
<td id="d3">D3</td>
<td id="e3">E3</td>
<td id="f3"class="sixth">F3</td>
</tr>
</table>
jQuery的:
$(document).ready(function(){
$('tr').click(function(){
rowID = $(this)[0].id;
celID = $(this).children('td:eq(5)')[0].id;
alert('Row '+rowID+'\nCell '+celID);
});
});
见jsFiddle。 (注意:class="sixth"
但仅用于在jsFiddle中进行调试和显示。
注意: OP解决了问题后的修订解决方案:jsFiddle
$(document).ready(function(){
$('td:nth-child(6)').click(function(){
alert( $(this)[0].id );
});
}):