本人笔误:<td onclick=aleret("ok1")>测试</td>
改为:<td onclick=alert("ok1")>测试</td>

解决方案 »

  1.   

    改正所有笔误:
    <html>
     <head>
      <SCRIPT language=javascript>
       function doSomething(){
         var tbody = document.all.item("test");
         var trElement=tbody.rows(0).cloneNode(true);
         trElement.dettachEvent("onclick",alert("ok1"));//1、解除绑定时怎么会直接触发"ok1"?
         trElement.attachEvent("onclick",alert("ok2"));//2、为什么不再执行这句?
         tbody.appendChild(trElement);
       }
      </SCRIPT>
      </head>
     <body onload=doSomething()>
      <table>
      <TBODY  id='test'>
        <td onclick=alert("ok1")>测试</td>
      </TBODY>
     </table>
     </body>
    </html>
    <!-希望解决:1、解除绑定时不发生调用;2、解除绑定后执行后续语句;->
      

  2.   

    <TBODY  id='test'>
        <td onclick=alert("ok1")>测试</td>
      </TBODY>
    这样写不对啊,没有tr
    <TBODY  id='test'>
        <tr onclick=alert("ok1")><td>测试</td></tr>
    </TBODY>
      

  3.   

    给你修改了一下
    <html>
     <head>
      <SCRIPT language=javascript>
       function doSomething(){
         var tbody = document.all.item("test");
         var trElement=tbody.rows(0).cloneNode(true);
         trElement.onclick=a2;
         tbody.appendChild(trElement);
       }
       function a1(){
    alert("ok1")
       }
       function a2(){
    alert("ok2")
       }
      </SCRIPT>
     </head>
     <body onload=doSomething()>
      <table>
      <TBODY  id='test'>
        <tr onclick=a1()><td>测试</td></tr>
      </TBODY>
     </table>
     </body>
    </html>邦定事件不用那么麻烦,不用attachEvent和dettachEvent也可以。
      

  4.   

    问题依旧!!!
    具体如下:
    <html>
     <head>
      <SCRIPT language=javascript>
       function doSomething(){
         var tbody = document.all.item("test");
         var trElement=tbody.rows(0).cloneNode(true);
         trElement.onclick=new Function(b());//1、绑定时如何不直接触发a()?
         aler("ok");//2、为什么不再执行后续语句?
         tbody.appendChild(trElement);
       }
       function a(){alert("a");}
       function b(){alert("b");}
      </SCRIPT>
      </head>
     <body onload=doSomething()>
      <table>
      <TBODY  id='test'>
        <tr><td onclick=a())">测试</td></tr>
      </TBODY>
     </table>
     </body>
    </html>
    <!-希望解决:1、解除绑定时不发生调用;2、解除绑定后执行后续语句;->
      

  5.   

    <!-希望解决:1、绑定时不发生调用;2、绑定后执行后续语句;->
      

  6.   

    把trElement.onclick=new Function(b());
    改成trElement.onclick=b();问题依旧
      

  7.   

    你的两种写法都是错误的,改:
    trElement.onclick=function(){b();}; 或
    trElement.onclick=b;
      

  8.   

    贴子转到http://expert.csdn.net/Expert/topic/1584/1584323.xml?temp=.4978144