我单击时应用以下代码使表行检查/取消选中子复选框.现在我发现当点击行内的复选框本身时,它会进行检查.可能是它检查点击(标准功能),然后jquery选择点击事件并取消选中它?我怎样才能解决这个问题?
//check on div click $("tr").live("click",function() { var checkBox = $(this).find("input[type='checkBox']"); if( checkBox.attr("checked") == "" ){ checkBox.attr("checked","true"); } else { checkBox.attr("checked",""); } });
解决方法
我怀疑click事件是从复选框冒泡到tr.尝试添加此代码:
$('tr input[type=checkBox]').click(function(e){ e.stopPropagation(); });
编辑
这是一个例子:http://jsfiddle.net/GSqNv/