在将js添加进去之后,我们需要在user-list中配置。
<script type="text/javascript" src="${pageContext.request.contextPath}/js/jquery-3.2.1.min.js"></script>我们需要删除多条时,首先在userInfoService中添加一个方法,这个方法是用来删除复选的多个用户的,因此其操作的对象是一个List的结构。
void deleteAllUser(List<Integer> ids);在IUserInfoDao中编写方法,来编写方法对数据库进行操作。
UserInfo DeleteAllUser(List<Integer> ids);sql语句的编写
<delete id="DeleteAllUser" parameterType="List" > delete from userinfo where id in <foreach collection="list" item="id" open="(" close=")" separator=","> #{id} </foreach> </delete>在这条sql的语句中有一个循环结构,因为我们需要删除的是多条信息,这个信息包是通过List传递过来的。delete语句删除多条数据是通过(info1,info2,info3,…,)来限制查询的范围。 对于用户的批量删除,我们还需要将user-info中的刷新按钮改为删除按钮,并给其添加点击事件,在此处,按钮的点击事件被添加在xml文件之中。
<script type="text/javascript"> function deleteAll () { var checkNum = $("input[name='ids']:checked").length; if(checkNum == 0){ alert("至少选择一项") } if(confirm("确定要删除吗?")){ var userList = new Array(); $("input[name = 'ids']:checked").each(function () { userList.push($(this).val()) }); } //alert(userList); $.ajax({ type:"post", url:"${pageContext.request.contextPath}/user/deleteAllUser.do", data:{userList:userList.toString()}, success:function () { alert("删除成功") ; Location.reload(); }, error:function () { alert("删除失败"); } }) } </script>这样就可以批量删除选择的用户信息。