1

我有一个这样的 javascript 事件处理程序:

for (i = 0; i < x; i++){
 var table = tableList[i];
 var tableID = table.getAttribute('id');

 var selector = table.querySelectorAll('input')[0];
 selector.on('focusout', function(){
    alert(tableID);
 }):
}

tableID 警报始终是 tableList 中最后一个表的 ID,无论我使用的是哪个表。

有任何想法吗?

4

1 回答 1

1

您可以将 tableID 作为数据对象附加到您的事件处理程序。试试下面的。

selector.on('focusout', { tableID: tableID }, function(e) {
    alert(e.data.tableID);
}):

根据 jQuery 文档。

//data
//Type: Anything
//Data to be passed to the handler in event.data when an event is triggered.
于 2013-06-12T20:03:27.400 回答