浏览1779次
例如:
<tr class="resultTr">
<td><inputtype="radio"name="checkbox" ,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就无法实现选中了,点击周围出现一个小框,应该是事件冲突,有什么好的解决办法么?
提问者采纳
首先你写的这个就有问题,你点击radio的时候实际上已经选中了,但事件冒泡到了tr,又执行了一次click事件,所以就造成了选不中的情况,此外,单选框不像复选框,没必要判断是否处于选中状态,代码可以优化成这样:
$("tr.resultTr").bind("click",function(){
$(this).find("input:radio").attr("checked","checked")
});
- 提问者评价
-
按照你说的,真的成功了,好开心,谢谢你!