none
button按钮disabled之后,edge浏览器居然仍能触发click事件 RRS feed

  • 问题


  • 把<span>去掉后,就行了,但是我现在不能把<span>去除,下面是个简单的例子,有没有人跟我一样的

    <html>
    <head>
    <script type="text/javascript" src="jquery-1.6.1.js"></script>
    <script type="text/javascript">
    $(document).ready(function(){
    $("button").bind("click",function(){
    alert("heihei")
    });
    });
    </script>
    </head>
    <body>
    <p>this is a dialog</p>
    <button disabled="disabled"><span>change</span></button>
    </body>
    </html>


    2015年9月18日 6:17

答案

  • 是的,我也重现了你的问题。

    作为workaround,我们可以用e.stopPropagation() 来阻止子元素触发父元素事件。

    $("#btn").bind("click",function(event){
    
    
    	alert(event.target.id);
      });
    $("#span").click(function(e){
      e.stopPropagation();
    
    });
    });
    </script>
    </head>
    <body>
    <p>this is a dialog</p>
    <button id="btn" disabled="disabled"><span id="span">change</span></button>
    

    希望对你有所帮助。
    2015年9月21日 2:45