ajax 销毁,删除功能(Ajax版)

这篇博客探讨了在JavaScript中如何为动态生成的DOM元素正确绑定点击事件,特别是针对删除操作。文中提供了单个删除和批量删除的实现代码,涉及到AJAX请求、确认对话框以及事件委托。此外,还介绍了全选/全不选功能的实现,并展示了后端接口处理批量删除的示例。
摘要由CSDN通过智能技术生成

单个删除

删除按钮:

var delBtn = $("删除");

注意:

//此事件不可用

$(".del").click(function(){

var id =$(this).parents("tr").find("td:eq(1)").text();

alert(id);

});

上面这段代码不起作用的。因为,删除按钮是用DOM动态生成。

DOM生成的UI,需要如下代码绑定事件。

//单个删除事件

$(document).on("click", ".del", function () {

var id = $(this).parents("tr").find("td:eq(1)").text();

if (confirm("确定删除" + id + "吗?")) {

$.ajax({

url: "${ctx}/emp/" + id,

type: "delete",

success: function (result) {

if (result.code == 100) {

alert(result.msg);

//删除后跳转到当前页面

toPage(currentPage);

}

}

});

}

});

5f688f34ddf9a74fc73846989f74e594.png

全选/全不选

与之前的写法一样

//全选/全不选

$("#checkAll").click(function () {

$(".checkItem").prop("checked", $(this).prop("checked"));

//这里不能用attr

});

$(document).on("click", ".checkItem", function () {

var flag = $(".checkItem:checked").length == $(".checkItem").length;

$("#checkAll").prop("checked", flag);

//这里不能用attr,只能用prop

});

批量删除

//批量删除事件

$("#batchDel").click(function () {

var ids = ""; //保存拼接id

var count = 0; //统计选中个数

$.each($(".checkItem:checked"), function (index, item) {

ids += item.value + ",";

count++;

});

if (count == 0) {

alert("请选中要删除的记录");

return false;

}

ids = ids.substring(0, ids.length - 1);

if (confirm("确定删除" + ids + "吗?")) {

$.ajax({

url: "${ctx}/emp/" + ids,

type: "delete",

success: function (result) {

if (result.code == 100) {

alert(result.msg);

//删除后跳转到当前页面

toPage(currentPage);

//全选复选框变为全不选

$("#checkAll").prop("checked", false);

}

}

});

}

});

@ResponseBody

@RequestMapping(value="/emp/{ids}",method = RequestMethod.DELETE)

public Msg delete(@PathVariable String ids){

//批量删除

if(ids.contains(",")){

String[] arr = ids.split(",");

List list = new ArrayList<>();

for (String e : arr) {

Long id = Long.parseLong(e);

list.add(id);

}

empService.batchDel(list);

}

//单个删除

else{

Long id = Long.parseLong(ids);

empService.delele(id);

}

return Msg.success();

}

926c5c80848c5fae79f2b2627cc6b557.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值