javascript中子标签如何屏蔽父标签的事件
今天写js代码遇到一个问题,代码如下
<tr onClick='queryUserInfoByUserId(userId);'> <td id='td1'> <input type='checkbox' name ='user_info_checkbox'/> </td> <td id =td2></td> .... </tr>
欲实现如下效果:
点击一行时候 单元格td1 不响应queryUserInfoByUserId事件,而只有选择checkbox操作,点击其他单元格时候响应queryUserInfoByUserId事件。上网查询知道在HTML标签中 标签的响应顺遵循冒泡原则,即如果td1中有事件A 则td1的响应顺序为:
A--->queryUserInfoByUserId
上网查询 解决方法如下:
<tr onClick='queryUserInfoByUserId(userId);'> <td id='td1' onclick='if(document.all)event.cancelBubble=true;else event.stopPropagation();'> <input type='checkbox' name ='user_info_checkbox'/> </td> <td id =td2></td> .... </tr>
在td1中加入上述代码即可实现