日期:2014-05-16  浏览次数:20390 次

js ajax 里访问不了节点列表的第i个元素
for (i = 0; i < aAllPrice.length; i++)
{
aAllPrice[i].index = i;
aAllPrice[i].onmouseover = function ()
{
//this.style.cursor = 'default';

ajax(systemUrl + '/mytests/getAllPrice/' + this.getAttribute('value'), function (data) {

alert(aAllPrice[i].innerHTML);
});

}
}


为什么每次都是undefined
alert(aAllPrice)就是一个节点列表呢.应该怎么解决的.我就想第几个元素触发事件就alert出第几个元素的innerHTML
在线等...

------解决方案--------------------
重新发下:

for (i = 0; i < aAllPrice.length; i++)
  {
      aAllPrice[i].index = i;
      (function(n){
          aAllPrice[n].onmouseover = function ()
          {
            //this.style.cursor = 'default';
            ajax(systemUrl + '/mytests/getAllPrice/' + this.getAttribute('value'), function (data) {
              alert(aAllPrice[n].innerHTML);
            });
          }
      })(i);
  }