您的位置:首页 > 其它

SSH实现批量删除

2017-03-26 22:31 351 查看
实现效果:



以下是部分关键代码:

Js实现多项选择

<script type="text/javascript">
/*全选JS*/
function CheckAll(thisform){
for (var i=0;i<thisform.elements.length;i++){
var e = thisform.elements[i];
if (e.Name != "chkAll"&&e.disabled!=true)
e.checked = thisform.chkAll.checked;
}
}
/*判断是否选空*/
function judge(){
var arrayid = new Array();
$('input[name="ids"]:checked').each(function(){arrayid.push($(this).val());});
if(arrayid.length==0){
alert("无实例选中");
event.preventDefault(); // 兼容标准浏览器
window.event.returnValue = false; // 兼容IE6~8
}
}
</script>


Jsp列表迭代输出

<s:form action="user_delAll" method="post" theme="simple">
<table cellpadding="6" cellspacing="1" bgcolor="#dddddd"
align="center" width="600">
<tr class="td1">
<th>序号</th>
<th>全选</th>
<th>用户ID</th>
<th>用户名</th>
<th>用户密码</th>
<th>状态</th>
<th>操作</th>
</tr>
<s:iterator value="#request.list" id="user" status="b" >
<tr class="td2">
<td align="center"><s:property value="#b.index+1" /></td>
<td align="center" width="30"><s:checkbox name="ids"
value="false" fieldValue="%{#user.id}"></s:checkbox><!-- 后台的action要定义和checkbox的name值相同的属性变量,并提供getter和setter方法,这样后台才能接受传过去的属性值,此项目中要定义ids数组-->
</td>
<th>${user.id}</th>
<th>${user.uname}</th>
<th>${user.upass}</th>
<c:if test="${user.flag eq '1'}"><th style="color:red">锁定</th></c:if>
<c:if test="${user.flag eq '0'}"><th style="color:green">允许</th></c:if>
<th align="center"><a
href="${pageContext.request.contextPath}/user_edit.action?id=${user.id}">修改</a></th>
</tr>
</s:iterator>
<tr class="td1">
<td></td>
<td align="center"><s:checkbox name="chkAll"
onclick="CheckAll(this.form)">
</s:checkbox>
<s:submit value="删除" onclick="judge()"></s:submit></td>
<td colspan="8" align="right"><s:a href="regist.jsp">添加</s:a> |
</td>
</tr>
</table>
</s:form>


Dao中逐条删除用户记录

/*
* 根据Id值查找
*/
public User findById(Integer id) {
Session session = getSessionFactory().getCurrentSession();
User user = (User) session.get(User.class, id);
return user;
}

/*
* 循环删除多条记录
*/
public void delAll(int[] ids) {
Session session = getSessionFactory().getCurrentSession();
for (int i = 0; i < ids.length; i++) {
User user = this.findById(ids[i]);
session.delete(user);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: