【发布时间】:2010-10-02 01:20:45
【问题描述】:
我的 JScript 代码有问题。我正在尝试遍历表中的所有行并添加一个onclick 事件。我可以添加 onclick 事件,但有几个问题。
第一个问题是所有行最终都为onclick 事件设置了错误的参数。
第二个问题是它只适用于IE。
这里是代码摘录:
shanesObj.addTableEvents = function(){
table = document.getElementById("trackerTable");
for(i=1; i<table.getElementsByTagName("tr").length; i++){
row = table.getElementsByTagName("tr")[i];
orderID = row.getAttributeNode("id").value;
alert("before onclick: " + orderID);
row.onclick=function(){shanesObj.tableRowEvent(orderID);};
}}
shanesObj.tableRowEvent = function(orderID){
alert(orderID);}
该表位于以下位置...
http://www.blackcanyonsoftware.com/OrderTracker/testAJAX.html
每一行的id依次是... 95, 96, 94...
由于某种原因,当shanesObj.tableRowEvent 被调用时,onclick 被设置为所有具有最后一个值 id 的行在循环 (94) 上经历了迭代。
我在页面上添加了一些警报来说明问题。
【问题讨论】:
标签: javascript onclick dom-events