动态生成的dom,可以行内添加onclick,
也可以 事件委托参考
http://topic.csdn.net/u/20120531/19/b8824cdc-ab08-4e05-a07c-1a299a2cf500.html

解决方案 »

  1.   

    jQuery 这个我还没学到哦 ,除了jQuery,有其他办法吗?高手们说具体点啊
      

  2.   

    live的本质就是事件冒泡,LZ去百度看看吧
      

  3.   

    我刚才去看了下 但是jQuery这个我还没学到过呀 难道没其他办法了吗?
      

  4.   

    var lis = document.getElementById("z_type").getElementsByTagName("li");//查找ID为Z_TYPE元素下的所有LI标签
    for(var i=0;i<lis.length; i++){
        if(lis[i].tagName=="LI"){
            lis[i].onclick=function(){//增加单击事件
                //这里写你的代码
                alert(this.innerHTML);
            };
        }
    }
      

  5.   


    你没做好闭包。。
    for(var i=0;i<lis.length; i++){
      if(lis[i].tagName=="LI"){
      lis[i].onclick=(function(i){
        return function(){alert(i);}/////
      })(i);
    }
      

  6.   

    我也在写这个,我的代码写的也一样,但是问题是我第一次点击之后,不走那个onclick事件,能不能帮忙看看。function sometest(){
    var lis=document.getElementsByTagName("li");
     for(var i=0;i<lis.length;i++){
            lis[i].onclick=function(){
               document.getElementById("datasorce").value=this.innerHTML;
            };
     }
    };
      

  7.   


    你没做好闭包。。
    for(var i=0;i<lis.length; i++){
      if(lis[i].tagName=="LI"){
      lis[i].onclick=(function(i){
        return function(){alert(i);}/////
      })(i);
    }按您的写还是有问题……
      

  8.   

    问题解决了,开头加了句:document.getElementById("datasorce").value=arg.innerHTML;