设计中,遇到的问题,不知该如何解决,希望高手帮帮忙,谢谢,在线等!!急!!!
function administrationNoticeMenuInit()
{
var row = document.createElement( "tr ");
var cell=null,img=null;
for(var i=0;i <4;i++)
{
cell = document.createElement( "td ");
img = document.createElement( "img ");
img.setAttribute( "id ", "administrationNotice "+i);
img.setAttribute( "src ", "../images/index1_0 "+i+ ".jpg ");
if(document.uniqueID)
{
img.style.cssText = "cursor: hand; ";
}
else
{
img.setAttribute( "style ", "cursor: hand; ");
}
img.onclick = function() { administrationNoticeInit( i ) };
cell.appendChild(img);
row.appendChild(cell);
}
administrationNoticeMenu.appendChild(row);
}
administrationNoticeInit(index)
{
alert(index);
}
在界面上生成的四个图片,点击任何一个图片,都会提示为4,而不是0,1,2,3。
问题出现在img.onclick = function() { administrationNoticeInit( i ) };中,但不知道该如何解决啊!请高手们帮帮忙,急啊,在线等!
------解决方案--------------------img.onclick = function() { new Function( "administrationNoticeInit( "+ i+ " ) ") };
查查闭包问题,上面只是一种解决方法,还有别的方法