js 动态添加事件的问题?--100分

hiker375 2008-09-07 09:58:11
js动态添加事件的简要代码,是用ajax写的

ie下的写法
for(var i=0;i<3;i++){
var list=xmlHttp.responseXML.getElementsByTagName("List"+i);

var f_id=list[0].firstChild.nodeValue;
var f_nprice=list[1].firstChild.nodeValue;
var f_e_id=list[2].firstChild.nodeValue;

var img=document.createElement("img");
img.attachEvent('onclick',show);
function show(){alert(f_id);alert(f_nprice);alert(f_e_id);}
}
用这段代码在页面中写了三个img,触犯onclick事件后,发现alert出来的都是第三img得到的值
而在fix中则不会,因为ff支持setAttribute(),每次触发不同的img都会alert相应的记录值。
请问如何修改js代码,才能得到ff中的效果。
...全文
54 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
hiker375 2008-09-07
  • 打赏
  • 举报
回复
解决了,原来是js中的闭包问题。

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧