jquery 单击table行事件和radio的选中事件冲突

例如:<trclass="resultTr"><td><inputtype="radio"name="checkbox"id="${personId}"value="0"... 例如:
<tr class="resultTr">
<td><inputtype="radio"name="checkbox" id="${personId}" value="0"/>
<td>张三<td>
<td>女<td>
</tr>
用jquery为行绑定事件,方便操作,单击行就可以选中radio,获取传递到后台;
$(".resultTr").bind("click",function(){
var checkObj = $(this).children().eq(0).children().eq(0);
if(checkObj.attr('checked')==undefined){
checkObj.attr('checked',true);
}else{
checkObj.attr('checked',false);
}
});

功能能够实现,可是如果这时单击一行中的radio就无法实现选中了,点击周围出现一个小框,应该是事件冲突,有什么好的解决办法么?
展开
 我来答
jonggers
推荐于2017-11-25 · TA获得超过846个赞
知道小有建树答主
回答量:497
采纳率:0%
帮助的人:544万
展开全部
首先你写的这个就有问题,你点击radio的时候实际上已经选中了,但事件冒泡到了tr,又执行了一次click事件,所以就造成了选不中的情况,此外,单选框不像复选框,没必要判断是否处于选中状态,代码可以优化成这样:
$("tr.resultTr").bind("click",function(){
$(this).find("input:radio").attr("checked","checked")

});
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ww198787
2013-01-30
知道答主
回答量:6
采纳率:0%
帮助的人:8707
展开全部
观望学习中
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
三间北房
2013-01-30 · TA获得超过1311个赞
知道小有建树答主
回答量:629
采纳率:66%
帮助的人:511万
展开全部
阻止radio的click事件冒泡
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式