$("tr").first().nextAll().click(function () {$("input[name='chkId']:checkbox").attr('checked',false); $("#chkAll").attr('checked',false); $(this).children().first().children().attr("checked", true);});单击tr选中当前行的第一个td的事件, 但是现在有个需求是一个点选 对多条进行操作的功能 就和这个冲突了 只能全选, 能不能把这个修改一下 就是如果我点击每一行第一个td 就是那个checkbox的时候,让他不触发这个事件 或者修改一下这个方法, 感谢各位大佬
8 回答

慕桂英4014372
TA贡献1871条经验 获得超13个赞
给ajax刷上去的tr加一个class 用于区分标题栏和数据
$(".trEmp td").nextAll().click(function () {
$("input[name='chkId']:checkbox").attr('checked',false);
$("#chkAll").attr('checked',false);
$(this).parent().children().first().children().attr("checked", true);
});
这样就可以了 研究了大半天 终于可以了 不知道有没有人用的上 我就放这边了

慕勒3428872
TA贡献1848条经验 获得超6个赞
全选、反全选和单独选中要分开写
$(()=>{ //单选判定是否全选按钮是否要选中 $("tbody").on("click","[type=checkbox]",()=>{ //给所有tbody下的checkbox 绑定单击事件 var $chbs=$("tbody").find("[type=checkbox]"); var c=0; for(var i=0;i<$chbs.length;i++){ if($($chbs[i]).prop("checked")==true){//每一次点击都要判定是否所有的checkbox都被选中,统计选中的数量 c++; if(c==$chbs.length){// 如果所有的checkbox都被选中,全选按钮也被选中 $("#selAll").prop("checked",true); } }else{ $("#selAll").prop("checked",false);// 一旦有一个没被选中,全选按钮设置未选中,退出循环 break; } } }) }); //全选和反全选 $(()=>{ $("tbody").on("change","#selAll",e=>{// 给全选按钮单独绑定事件 var $chbs=$("tbody").find("[type=checkbox]"); // 找到所有的checkbox· if($(e.target).is(":checked")){ // 如果全选选中,所有的checkbox都被选中 $chbs.each(function(){ $(this).prop("checked",true); }); }else{ $chbs.each(function(){// 否则,所有的checkbox都不能选中 $(this).prop("checked",false); }); } }); });

守着一只汪
TA贡献1872条经验 获得超4个赞
$("tr td").first().nextAll().click(function () { 这样就是给所有tr下的td绑定事件,然后里面判断是否是全选,是否是第一个checkbox就好了
添加回答
举报
0/150
提交
取消