是否可以遍历表格单元格列表并检查是否有任何特定事件(例如click
),然后执行回调函数?
答案 0 :(得分:3)
您可以使用td
selector和each
方法循环并使用事件数据来获取您要查找的事件:
$("td").each(function ()
{
//Do you work here
});
因此,对于以下HTML:
<table id="t1">
<tr> <td id="t1A">A <td> </tr>
<tr> <td>B <td> </tr>
<tr> <td>C <td> </tr>
<tr> <td>D <td></tr>
</table>
<table id="t2">
<tr> <td id="t2A">A <td> </tr>
<tr> <td>B <td> </tr>
<tr> <td>C <td> </tr>
<tr> <td>D <td></tr>
</table>
您可以使用以下内容:
$("#t1A").click(function () {
alert("t1A click event");
});
$("td").each(function () {
var events = $._data(this, "events")
if (!events) return;
var clickEvents = events.click;
if (!clickEvents) return;
if (clickEvents.length > 0) {
alert($(this).attr("id") + " has a click event");
$(this).click(); // Execute the click if you so desire.
}
});
请参阅此示例小提琴:http://jsfiddle.net/sdnr6/1/