当tr有onclick事件,里面的img也有一样的onclick事件如何处理?

oceanmeng 2016-08-02 08:07:59
当tr有onclick事件,里面的img加号/减号图标也有一样的onclick事件,功能就是展开/关闭,我在tr那行任意点击可以达到展开/关闭效果,但我去点击img的加号/减号图标就没有反应,我发现是触发了两次ECProvice导致的,请问有何办法在点击img的加号/减号图标时不要触发tr的onclick事件,也就是触发一次ECProvice.

function ECProvice(TheTR,img1)
{
var DataTR = $("tbody[name='"+TheTR+"']");
for(var i = 0; i < DataTR.length; i++)
{

if (DataTR[i].style.display=="block" || DataTR[i].style.display=="" )
{DataTR[i].style.display="none";
if(i==0){
document.getElementById(img1).src='/zygl/images/sizeplus.gif';
document.getElementById(img1).alt="展开展开各分行情况";
}
}
else
{DataTR[i].style.display="block";
if(i==0){
document.getElementById(img1).src='/zygl/images/sizeminus.gif';
document.getElementById(img1).alt="关闭展开各分行情况";
}
}
}
}



<tbody>
<tr onclick="ECProvice('BT00OILPOS','imgBT00OILPOS');">
<td style="background-color:#99ffff;" class="turnbgcolor1" align="center">20160802</td>
<td class="turnbgcolor1" nowrap>
<img id="imgBT00OILPOS" src="/zygl/images/sizeplus.gif" onclick="ECProvice('BT00OILPOS','imgBT00OILPOS');" style="cursor:hand" alt="展开各分行情况">Σ<br>OILPOS</td>
<td class="turnbgcolor1" align="left" width="210px" nowrap>(11710/11710)</td>
<td bgcolor="Thistle"></td>
<td class="turnbgcolor1" align="right">11132/<font style="color:red;font-weight:normal">0</font></td>
<td class="turnbgcolor1" align="center"><font style="COLOR:black;FONT-WEIGHT:bold" >93.40%</font></td>
<td bgcolor="Thistle"></td>
<td class="turnbgcolor1" align="right">/</td>
<td class="turnbgcolor1" align="right">4218</td>
<td class="turnbgcolor1" align="right">19286</td>
<td class="turnbgcolor1" align="right"><font style="COLOR:blue;FONT-WEIGHT:bold" >92.35%</font></td>
<td class="turnbgcolor1" align="right"><font style="COLOR:black;FONT-WEIGHT:normal" >2.80%</font></td>
<td class="turnbgcolor1" align="right"><font style="COLOR:black;FONT-WEIGHT:normal" >0.21%</font></td>
</tr>
</tbody>


...全文
254 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
oceanmeng 2016-08-05
  • 打赏
  • 举报
回复
具体如何修改,比如下面点击超级链接后本想只出现提示“href”,但它还是接着出现提示“div”了

<head>
<script type="text/javascript"> 
function tt(){ 
alert("div"); 
} 
function ttt(){
var e = arguments.callee.caller.arguments[0] || window.event; 
window.event?e.returnValue = false:e.preventDefault(); 
window.event?e.cancelBubble:e.stopPropagation();
alert("href"); 
}
</script> 
</head> 
<body> 
<div onclick = "tt();"> 
ccccc 
<a href="#" onclick="ttt();">baidu.com</a> 
</div> 
licip 2016-08-02
  • 打赏
  • 举报
回复
看这个。http://blog.csdn.net/JeamKing/article/details/5332328 对你有用,不过,你要改用jquery的方式来。
youren_zt 2016-08-02
  • 打赏
  • 举报
回复
到网上搜一下冒泡事件。。
笨猿 2016-08-02
  • 打赏
  • 举报
回复
贴详细代码~~~~
Hello World, 2016-08-02
  • 打赏
  • 举报
回复
阻止冒泡,或者绑定在tr上面,判断事件由哪个触发的
oceanmeng 2016-08-02
  • 打赏
  • 举报
回复
那我的代码该如何修改呢?
那一笑的凄凉 2016-08-02
  • 打赏
  • 举报
回复
e.stopImmediatePropagation();/ /终止执行绑定同事件的其他方法

87,921

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧