我的表是这样的:
<table>
<tr>
<td>
<img src="" />
<span>blah</span>
</td>
</tr>
...
因此,在每一行中,第一列包含图像。我需要在每个图像上注册事件。那我怎么选择呢?
我试过了:
td:eq(0):nth-child(0)
但它没有用。
答案 0 :(得分:2)
像这个选择器:
td:first-child > img
我应该工作......
答案 1 :(得分:2)
对于nth-child
选择器,索引是基于1的。我认为这样的事情对你有用:
$("td:nth-child(1) > img")
甚至更简单:
$("td:first-child > img")
答案 2 :(得分:1)
我建议:
$('table tr td:first-child img').on('event', function (){
// handle the event here
});
答案 3 :(得分:0)
看到您想要将事件附加到图像,而不是迭代到每个图像,您可以像这样绑定事件处理程序:
$("table").on("eventname", "td:first-child img", function(i){
//your code
});
答案 4 :(得分:0)
我认为http://forum.jquery.com/topic/jquery-how-to-select-all-first-tds-inside-all-tr-in-a-table包含几个解决方案:
$('tr td:first-child')
$('tr').find('td:eq(0)')
$("tr td:nth-child(1)")
答案 5 :(得分:0)
$('table > tr > td:first-child > img').bind('click', function() {
// your code
});
我会为表格提供一个唯一的id以获得更高的精确度。
$('#table_id > tr > td:first-child > img').bind('click', function() {
// your code
});
使用您需要检查的wathever事件替换上面代码中的'click'。
答案 6 :(得分:0)
您可以按如下方式选择表格的第一列图像:
$('tr').find('td:eq(0)')
答案 7 :(得分:0)
检查
$(function(){
$("table tr td:first-child").on("click","img",function(){
console.log("hey");
});
});