问个关于复选框的问题。。
原先做的后台管理只能进行单个删除。。。
只要是通过传递参数给action执行
Java code
<td><a href="Action?id=<%=user.getId()%>&action=delete" onclick="return confirm('是否将该条记录删除?')">删除</a></td>
现在想添加一个复选框checkbox实现批量删除
比如复选框checkbox名字叫pl
初步想法是把结果拼接成字符串通过a href传到后台执行操作
然后后台执行sql语句
SQL code
delect from user where id in (字符串)
但是具体实现代码不是很懂,求指导。。。。。
------解决方案--------------------
------解决方案--------------------前台:
<a href="javaScript:void(0);" onclick="submit()">批量删除</a>
function submit(){
表单名.action="Action";
表单名.submit();
}
后台:
String[] ids = request.getParameters("pl");
这样就可以获所有选中的checkbox的value
然后拼成 "id, id, id," 这样的字符串
------解决方案--------------------
checkbox的value属性是要删除的记录ID值,然后,在点击批量删除这个按扭,你肯定弹个对话框出来,在这里你循环获取已选中的checkbox的value并以,分隔,最后在把最后一个,给截掉,然后在传给action,这样就可以直接用来delete了,对吧!见代码:
JScript code
function del(action) {
var chk = document.getElementsByName("ids");
var i = 0, count = 0, value = "" ;
for (i; i < chk.length; i++) {
if (chk(i).checked) {
count++;
value += chk(i).value + ",";
}
}
if (count == 0) {
alert("请至少选择一条记录进行操作!");
return false;
}
if (!confirm("删除后的数据将不可恢复!\n确定要删除所选中的记录吗?")) {
return false;
}
value = value.substring(0,value.lastIndexOf(","))
document.frm.action = action+ "&id=" + value;
document.frm.method = 'post';
document.frm.submit();
return true;
}