<html>
<head>
 <script>
   function divclick(){
      alert('div');
   }
   function checkclick(){
     alert('check');
   }
 </script>
</head>
<body>
<div onclick=divclick()>
<input type=checkbox onclick=checkclick()/>
</div>
</body>
</html>上面的代码只要我点击复选框打印的是“div” 我想要的是“check”
像这样的情况应该怎么解决

解决方案 »

  1.   

    先把代码整规范了一点点<div onclick="divclick()"> 
    <input type="checkbox" onclick="checkclick()"/> 
    </div>
    点复选框时,会先打印"check"然后打印"div"
      

  2.   

    要么用""把属性包起来
    要么别让属性和html的/挨在一起,加个空格就可以了。
      

  3.   

    <html>
    <head>
    <script>
      function divclick(){
          alert('div');
      }
      function checkclick(arg){
       var evnt=window.event?window.event:arg;
        alert('check');
    if(evnt.stopPropagation){
    evnt.stopPropagation();
    }else{
    evnt.cancelBubble=true;
    }
      } 
    </script>
    </head>
    <body>
    <div onclick="divclick()"> 
    <input type="checkbox" onclick="checkclick()"/> 
    </div>
    </body>
    </html> 
    仁兄也确实应该注意下书写的规范了,呵呵
      

  4.   

    我的上个也不怎么规范啊,呵呵<html>
    <head>
    <script>
      function divclick(){
    alert('div');
      }
      function checkclick(arg){
    var evnt=window.event?window.event:arg;
        alert('check');
    if(evnt.stopPropagation){
        evnt.stopPropagation();
    }else{
        evnt.cancelBubble=true;
    }
      } 
    </script>
    </head>
    <body>
    <div onclick="divclick()"> 
      <input type="checkbox" onclick="checkclick()"/> 
    </div>
    </body>
    </html> 
      

  5.   

    <html>
    <head>
    <script>
      function divclick(){
          alert('div');
      }
      function checkclick(){
        alert('check');
      }
    </script>
    </head>
    <body>
    <div onclick=divclick()>
    <input type="checkbox" onclick="checkclick()"/>
    </div>
    </body>
    </html> 
      

  6.   

    IE中事件的起泡
    IE中事件可以沿着包容层次一点点起泡到上层,也就是说,下层的DOM节点定义的事件处理函数,到了上层的节点如果还有和下层相同事件类型的事件处理函数,那么上层的事件处理函数也会执行。例如, div 标签包含了 a ,如果这两个标签都有onclick事件的处理函数,那么执行的情况就是先执行标签 a 的onclick事件处理函数,再执行 div 的事件处理函数。如果希望的事件处理函数执行完毕之后,不希望执行上层的 div 的onclick的事件处理函数了,那么就把cancelBubble设置为true即可。
    function checkclick(arg){
        var evnt = window.event ? window.event : arg;
        evnt.cancelBubble = true;
    }
      

  7.   

    正确的情况是点复选框时,会先打印"check"然后打印"div"