我有一个Datatable,它在前两个coloumns中呈现两个图像按钮
<tr>
<td>Button 1
<td>Button 2
</tr>
<tr>
<td>Value<td/>
我正在尝试使用以下方法捕获相应点击的值:
$('[id$=releaseMessage]').click(function () {
alert($('td:eq(2)', this).html());
});
$('[id$=deleteMessage]').click(function () {
alert($('td:eq(2)', this).html());
});
每行的值不同,所以我可以使用这样的东西:
tr:eq(0) td:first-child
因为这将始终返回第一个td值。
答案 0 :(得分:0)
一些事情:
IDs
必须 才是唯一的!改为使用类。
由于两个click事件都做同样的事情,所以在选择器中组合两个类(使用逗号)。 $('.releaseMessage, .deleteMessage').click()
。
附注:我建议使用console.log()
而不是alert()
。
JAVASCRIPT:
$(document).ready(function(){
$('.releaseMessage, .deleteMessage').click(function(){
alert($(this).closest('tr').children().eq(2).html());
});
});
样本: http://jsfiddle.net/dirtyd77/tcyuF/3/
解释:
$(this)
指的是点击的元素(在本例中为锚点,a
)
.closest()
找到最接近的tr
.children()
获得了tr
的孩子
.eq()
标识元素
希望这有帮助,如果您有任何问题,请告诉我们!