我正在使用jquery数据表来生成html表。我设置了一个回调来为链接创建一个额外的列(编辑,删除等等)。
我设置了一个绑定功能来检测点击,这是有效的。
我遇到的问题是在点击最近一行时选择第一列的文本/值。
这是绑定到类并检测到点击的片段。
$(".drop").bind('click', function(e)
{
var val = $(e.target).closest('td:first').text();
alert(val);
});
生成后的HTML表格主体
<tbody>
<tr class="odd">
<td>doug@thisisatest.org</td>
<td>doug@email.com</td>
<td>1000012342015292781</td>
<td><a href="#" class="drop">Delete</a></td>
</tr>
<tr class="even">
<td>cameron@email.com</td>
<td></td>
<td></td>
<td><a href="#" class="drop">Delete</a></td>
</tr>
<tr class="odd">
<td></td>
<td>jeniper@yay.com</td>
<td>1734001234268</td>
<td><a href="#" class="drop">Delete</a></td>
</tr>
<tr class="even">
<td>test@iaretester.com</td>
<td></td>
<td></td>
<td><a href="#" class="drop">Delete</a></td>
</tr>
<tr class="odd">
<td></td>
<td>dou@blah.com</td>
<td>10000201142345292781</td>
<td><a href="#" class="drop">Delete</a></td>
</tr>
<tr class="even">
<td>delze@tester.net</td>
<td></td>
<td></td>
<td><a href="#" class="drop">Delete</a></td>
</tr>
<tr class="odd">
<td>boo@boo.com</td>
<td></td>
<td></td>
<td><a href="#" class="drop">Delete</a></td>
</tr>
<tr class="even">
<td>petroz@ouch.com</td>
<td>petroz@test.com</td>
<td>100000723143211905</td>
<td><a href="#" class="drop">Delete</a></td>
</tr>
<tr class="odd">
<td>helze@arg.com</td>
<td></td>
<td></td>
<td><a href="#" class="drop">Delete</a></td>
</tr>
<tr class="even">
<td></td>
<td>cameron@test.com</td>
<td>8197906212343</td>
<td><a href="#" class="drop">Delete</a></td>
</tr>
</tbody>
答案 0 :(得分:6)
这应该这样做:
var val = $(e.target).closest('td').siblings(':first-child').text();