日期:2014-05-16  浏览次数:20422 次

关于tr的onclick事件和tr里的<img>的onClick事件同时触发的问题
如题:
  先在要实现的功能是:当点击<tr>时会显示这行的详细信息,
  <tr>里有个图片,点击图片是触发编辑此行的信息。

  现在遇到的问题是当点击图片时同时触发了两个事件,以至于没办法编辑信息。求高者帮忙!

------解决方案--------------------
楼主去查一下事件流中的,冒泡和捕获吧,有帮助的~
------解决方案--------------------
在img的onclick事件里 加上 阻止冒泡:
Jquery的 : event.stopPropagation();

原生的:
function stopBubble(e){
if(e && e.stopPropagation){
e.stopPropagation(); //w3c
}else window.event.cancelBubble=true; //IE
}

img.onclick= function(event){
stopBubble(event);
......your code
}
------解决方案--------------------
楼上说的是对的,考虑了浏览器兼容问题。。
------解决方案--------------------
探讨
在img的onclick事件里 加上 阻止冒泡:
Jquery的 : event.stopPropagation();

原生的:
function stopBubble(e){
if(e &amp;&amp; e.stopPropagation){
e.stopPropagation(); //w3c
}else window.event.cancelBubble=true; //……

------解决方案--------------------
<tr>
<a href="XXXAction?XXX.id=${XXX.id}">图片路径</a>
</tr>
这是web开发的,用的是ssh的,action跳转的主要意思就是:
当你点击路径时请求一个action,将你要显示的详细信息传到下一页在详细信息页面取值
------解决方案--------------------
探讨

在img的onclick事件里 加上 阻止冒泡:
Jquery的 : event.stopPropagation();

原生的:
function stopBubble(e){
if(e &amp;&amp; e.stopPropagation){
e.stopPropagation(); //w3c
}else window.event.cancelBubble=true; ……