估计是使用同一个变量问题,你不用frmElement 和 toElement 直接用  $(CustomerTabInfo[i].ListenID) 试下..

解决方案 »

  1.   


    var obj=document.getElementById("main");//匿名函数解决函数只能引用外部循环变量的最后值问题
            var items=["click","keydown"];       
            for(var i=0;i<items.length;i++)
            {
                (function (){//#
                    var item=items[i];
                    obj["on"+item]=function(){
                        alert("thanks"+item);
                    };
                })//#
                ();//#     如果这把三个"#"行的语句注释掉,不能够达到预期的效果
            }   
      

  2.   

    这样我也试过的,也是不可以
    for(var i = 0; i < CustomerTabInfo.length; i++) 
    {                     if($(CustomerTabInfo[i].ListenID)!=null && $(CustomerTabInfo[i].PerformID)!=null) 
                          { 
                              $(CustomerTabInfo[i].PerformID).attachEvent(CustomerTabInfo[i].Env,function(){$(CustomerTabInfo[i].PerformID).value = $(CustomerTabInfo[i].PerformID).value}); 
                            //alert() 这里是调用成功的,但事件却没有附加上        
                          } 
    } ,哪怕是这样
     var frmElement ,toElement  
    for(var i = 0; i < CustomerTabInfo.length; i++) 

                        frmElement = $(CustomerTabInfo[i].ListenID); 
                        toElement  = $(CustomerTabInfo[i].PerformID); 
                        if(frmElement!=null && toElement !=null) 
                          { 
                              frmElement.attachEvent(CustomerTabInfo[i].Env,function(){toElement.value = frmElement.value}); 
                            //alert() 这里是调用成功的,但事件却没有附加上        
                          } 

    也不行.就是很奇怪的
      

  3.   


    if(this.openEvent){                                                        
                    (function(){
                        var obj=tnl[i];                     
                        obj[eName]=function(e){                        
                            eval(FunctionName+"('"+obj.id+"','"+obj.id+"',false);");                                            
                        };                                       
                    })();                                                                                                    
            }这是我写tab类库用的方法 不一定很好
    你可以参考下
      

  4.   

    frmElement.attachEvent(CustomerTabInfo[i].Env,function(){toElement.value = frmElement.value}); 注意到这里吗?后面的function里面的值
    你输出看看
    我没把话说清楚
    我的意思 i再后面的这个function里
    只能得到最后的那个值