欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

jquery ajax实现批量删除具体思路及代码

程序员文章站 2022-08-09 20:54:28
js页面jquery代码: 复制代码 代码如下: // javascript document $(document).ready(function() { // 全选 $...
js页面jquery代码
复制代码 代码如下:

// javascript document
$(document).ready(function() {
// 全选
$("#allchk").click(function() {
$("input[name='subchk']").prop("checked",this.checked);
});
// 单选
var subchk = $("input[name='subchk']")
subchk.click(function() {
$("#allchk").prop("checked", subchk.length == subchk.filter(":checked").length ? true:false);
});
/* 批量删除 */
$("#del_model").click(function() {
// 判断是否至少选择一项
var checkednum = $("input[name='subchk']:checked").length;
if(checkednum == 0) {
alert("请选择至少一项!");
return;
}
// 批量选择
if(confirm("确定要删除所选项目?")) {
var checkedlist = new array();
$("input[name='subchk']:checked").each(function() {
checkedlist.push($(this).val());
});
$.ajax({
type: "post",
url: "deletemore",
data: {'delitems':checkedlist.tostring()},
 success: function(result) {
$("[name ='subchk']:checkbox").attr("checked", false);
window.location.reload();
}
});
}
});
});
页面元素
<a href="#" id="del_model"><span>删除用户</span>
<th class="tal"><input type="checkbox" id="allchk"/>全选</th>
<td><input type="checkbox" name="subchk" value="${user.id}"/></td>

回调函数,在请求完成后需要进行的操作:此处是把选中的checkbox去掉(因为是用到了freemarker的list循环,去掉是数据后checkbox序号变化,还有有相应未知的checkbox被选中,需要去掉)。
复制代码 代码如下:

success: function(result) {
$("[name = 'items']:checkbox").attr("checked", false);
window.location.reload();
}

java后台代码
复制代码 代码如下:

@requestmapping(value = "/deletemore", method = requestmethod.post)
public string deletemore(httpservletrequest request, httpservletresponse response) {
string items = request.getparameter("delitems");
string[] item = items.split(",");
for (int i = 0; i < item.length; i++) {
userservice.delete(integer.parseint(item[i]));
}
return "redirect:list";
}

效果图:
jquery ajax实现批量删除具体思路及代码