jquery复选框checkbox实现删除

qq_34016767 2016-06-01 12:45:50
为删除的div(批量删除按钮)添加点击事件,代码如下:

$("#delSelect").click(function() {
var array = new Array(); //用于保存 选中的那一条数据的ID
var flag; //判断是否一个未选
$("input[name='selectFlag']:checkbox").each(function() { //遍历所有的name为selectFlag的 checkbox
if ($(this).attr("checked")) { //判断是否选中
flag = true; //只要有一个被选择 设置为 true
}
})
if (flag) {
$("input[name='selectFlag']:checkbox").each(function() { //遍历所有的name为selectFlag的 checkbox
if ($(this).attr("checked")) { //判断是否选中
//alert($(this).val());
array.push($(this).val()); //将选中的值 添加到 array中
//str+=$(this).val()+",";
}
})
//将要集体删除的数据 传递给action处理
//window.self.location = "deleteUser?info=" + array;
} else {
alert("请至少选择一个用户");
}
});

要进行处理的数据,代码如下:
success: function(data){
//循环输出数据
$.each(ulist, function(i, user){
var txt = '<tr><td><input type="checkbox" name="selectFlag" value='+user.id+'></td><td>'+user.name+'</td><td>'+user.pwd+'</td><td><a href="javaScript:detail('+user.id+')">详细</a></td><td><a href="javaScript:edit('+user.id+')">修改</a></td><td><a href="javaScript:del('+user.id+')">删除</a></td></tr>';
$("#tb").append(txt);
});
}




问题:选中复选框后点击批量删除按钮后,弹出“请至少选择一个用户”,怎样修改上面的代码,才可以删除选中的复选框项?





...全文
701 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
day_moon 2016-06-02
  • 打赏
  • 举报
回复
$("#delSelect").click(function() { //当时是想把内容以str+=""的方式 进行保存 ,但不行 var str=""; var ckbs=$("input[name='selectFlag']:checked"); if(ckbs.size()==0){ alert("要删除指定行,需选中要删除的行!"); return; } ckbs.each(function(){ str+=$(this).val()+","; //将选中的值 添加到 array中 $(this).parent().parent().remove(); });
qq_34016767 2016-06-01
  • 打赏
  • 举报
回复
我的问题就是:没有获取得到对象
qq_34016767 2016-06-01
  • 打赏
  • 举报
回复
修改成: $("#delSelect").click(function() { //当时是想把内容以str+=""的方式 进行保存 ,但不行 //var str; var array = new Array(); //用于保存 选中的那一条数据的ID var flag; //判断是否一个未选 $("input[name=selectFlag][type=checkbox]").each(function() { if ($(this).attr("checked") == "checked") { array.push($(this).val()); } }); }); 点击删除,没有反应。
oxcow 2016-06-01
  • 打赏
  • 举报
回复
引用 楼主 qq_34016767 的回复:
为删除的div(批量删除按钮)添加点击事件,代码如下: $("#delSelect").click(function() { var array = new Array(); //用于保存 选中的那一条数据的ID var flag; //判断是否一个未选 $("input[name='selectFlag']:checkbox").each(function() { //遍历所有的name为selectFlag的 checkbox if ($(this).attr("checked")) { //判断是否选中 flag = true; //只要有一个被选择 设置为 true } }) if (flag) { $("input[name='selectFlag']:checkbox").each(function() { //遍历所有的name为selectFlag的 checkbox if ($(this).attr("checked")) { //判断是否选中 //alert($(this).val()); array.push($(this).val()); //将选中的值 添加到 array中 //str+=$(this).val()+","; } }) //将要集体删除的数据 传递给action处理 //window.self.location = "deleteUser?info=" + array; } else { alert("请至少选择一个用户"); } }); 要进行处理的数据,代码如下: success: function(data){ //循环输出数据 $.each(ulist, function(i, user){ var txt = '<tr><td><input type="checkbox" name="selectFlag" value='+user.id+'></td><td>'+user.name+'</td><td>'+user.pwd+'</td><td><a href="javaScript:detail('+user.id+')">详细</a></td><td><a href="javaScript:edit('+user.id+')">修改</a></td><td><a href="javaScript:del('+user.id+')">删除</a></td></tr>'; $("#tb").append(txt); }); } 问题:选中复选框后点击批量删除按钮后,弹出“请至少选择一个用户”,怎样修改上面的代码,才可以删除选中的复选框项?
你这段代码目前的问题是什么? 不提示?还是说无法传递选中的值?
anakin_feng 2016-06-01
  • 打赏
  • 举报
回复
jquery1.9之后 要用$(this).prop("checked")来判断是否选中
菜 头 2016-06-01
  • 打赏
  • 举报
回复
if ($(this).attr("checked")) 改为if ($(this).attr("checked")=="checked")
qq_27846581 2016-06-01
  • 打赏
  • 举报
回复
既然弹出选择用户,那么flag肯定是false,那就是判断是否选中那边出错了,你先看下有没有获取到对象
  • 打赏
  • 举报
回复

 $("input[name=selectFlag][type=checkbox]").each(function() { 
                        if ($(this).attr("checked") == "checked") { 
                           array.push($(this).val());
                        }  
                    })  
这么写试试

81,094

社区成员

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

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