按了顶上的删除(多项删除)

单列复选框删除 js语句

 <a href="javascript:delOne('${customer.id}')">删除</a></td>
 <script type="text/javascript">
function delOne(customerId)
{
var sure=window.confirm("确定删除么?");
if(sure)
{
window.location.href="${pageContext.request.contextPath}/DelCustomerServlet?customerId="+customerId;      //客户端转向servlet用于删除数据
}
}
</script>

多列复选框删除js语句

先在table外套个form表单 并且指定id,其中给复选框指定name 和 value

<td><input type="checkbox" name="ids" value="${customer.id}"/></td>

     <form action="${pageContext.request.contextPath }/DelCustomerServlet?method=delMultiple" id="form" method="post">
<table >
............
</table>
</form>
     <script type="text/javascript">
function delMultiple()
{
var ids=document.getElementsByName("ids");
var selected=false;
for(var i=0;i<ids.length;i++)
{
if(ids[i].checked)
{
selected=true;
break;
}
}
if(selected)
{
var sure=window.confirm("确定删除所选记录么?");
if(sure)
{
document.getElementById("form").submit();
}
}
else
{
alert("请先选择要删除的记录");
} }
</script>

参考

 <%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@taglib uri="http://www.WFReduceContent.com" prefix="reduce"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<form action="${pageContext.request.contextPath }/DelCustomerServlet?method=delMultiple" id="form" method="post">
<table >
<tr>
<th><a href="${pageContext.request.contextPath}/HandleDispatchServlet?method=toAddCustomer">添加</a></th>
<th><a href="javascript:delMultiple()">多重删除</a></th>
</tr>
</table>
<table align ="center" cellpadding="5" border="4" >
<tr>
<th>选择</th>
<th>姓名</th>
<th>性别</th>
<th>生日</th>
<th>电话</th>
<th>email</th>
<th>爱好</th>
<th>类型</th>
<th>描述</th>
<th>操作</th>
</tr>
<c:forEach var="customer" items="${requestScope.customerList }" varStatus="status">
<tr bgcolor="${status.index%2==0?'red':'gray' }">
<td><input type="checkbox" name="ids" value="${customer.id}"/></td>
<td>${customer.name}</td>
<td>${customer.gender=="1"?"男":"女"}</td>
<td>${customer.birthday}</td>
<td>${customer.cellphone}</td>
<td>${customer.email}</td>
<td>${customer.hobby}</td>
<td>${customer.type}</td>
<td><reduce:reduceContent value="${customer.description}"/> </td>
<td><a href="${pageContext.request.contextPath}/HandleDispatchServlet?method=editCustomer&customerId=${customer.id}">编辑</a>
<a href="javascript:delOne('${customer.id}')">删除</a></td>
</tr>
</c:forEach>
</table>
<script type="text/javascript">
function delOne(customerId)
{
var sure=window.confirm("确定删除么?");
if(sure)
{
window.location.href="${pageContext.request.contextPath}/DelCustomerServlet?customerId="+customerId;
}
}
function delMultiple()
{
var ids=document.getElementsByName("ids");
var selected=false;
for(var i=0;i<ids.length;i++)
{
if(ids[i].checked)
{
selected=true;
break;
}
}
if(selected)
{
var sure=window.confirm("确定删除所选记录么?");
if(sure)
{
document.getElementById("form").submit();
}
}
else
{
alert("请先选择要删除的记录");
} }
</script>
</form>
</body> </html>
 package cn.itcast.Controller;

 import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import cn.itcast.service.CustomerService;
import cn.itcast.service.impl.CustomerServiceImpl; public class DelCustomerServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
private CustomerService service= new CustomerServiceImpl();
public DelCustomerServlet() {
super();
} protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String method=request.getParameter("method");
if("delMultiple".equals(method)) //多重删除
{
String ids[]=request.getParameterValues("ids");
if(null!=ids&&ids.length>0)
for(String id:ids)
service.delCustomerById(id);
request.getRequestDispatcher("ShowAllCustomer").forward(request, response);
return;
}
//单条删除
String customerId=request.getParameter("customerId");
System.out.println( "servlet"+customerId);
service.delCustomerById(customerId.trim());
request.getRequestDispatcher("ShowAllCustomer").forward(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doGet(request, response);
} }

js 多选选择删除数据的更多相关文章

  1. JavaScript--动态添加元素(纯js书写table并删除数据)

    本文是对上一篇博文的扩展,用js书写表格,并添加和删除数据,详细代码解释见代码页. 对于文中使用的script脚本函数,下载地址如下:https://pan.baidu.com/s/13OFnj7nc ...

  2. JS多项选择删除

    $(document).ready(function(){ $("#batdel").click(function(){ var checkedLen = 0; var check ...

  3. JS中表格的全选和删除要注意的问题

    在项目开发中,由于刚刚开始做项目,我对js还不是很精通,所以在用js对表格的全选和删除中遇到了不少问题,后来通过查找资料解决了,之后总结了一下关于js表格的全选和删除出现的一些问题,希望能帮助到大家. ...

  4. easyui datagrid 通过复选框删除新追加的数据问题

    之前写好的功能在保存好数据后再通过复选框删除是没有问题的,可现在想多追加几行,然后选择删除新追加的某几行或一行,通过$('#dg').datagrid('getChecked')方法返回选中行,然而返 ...

  5. js 给json添加新的字段,或者添加一组数据,在JS数组指定位置删除、插入、替换元素

    JS定义了一个json数据var test={name:"name",age:"12"};需要给test再添加一个字段,需要什么办法,可以让test的值为{na ...

  6. [习题] FindControl 简单练习--GridView + CheckBox,点选多列数据(复选删除)#3 List或数组

    [习题] FindControl 简单练习--GridView + CheckBox,点选多列数据(复选删除)#3 List或数组 之前的范例,使用字符串.文字来记录将删除的文章ID 后续会有很多小缺 ...

  7. ASP.NET MVC搭建项目后台UI框架—8、将View中选择的数据行中的部分数据传入到Controller中

    目录 ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NE ...

  8. View中选择的数据行中的部分数据传入到Controller中

    将View中选择的数据行中的部分数据传入到Controller中   ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NE ...

  9. ASP.NET给DataGrid,Repeater等添加全选批量删除等功能

    很多情况下,在管理或者查看列表的时候我们需要很需要“全选”这个功能,这在ASP.NET中是非常容易实现的,下面我就将演示一点小代码实现这一功能.   实现全选的还是js的一个小函数:   [code] ...

随机推荐

  1. MySQL导数据工具对比

    最近遇到非常多的导数据的需求(主要是CSV的需求),专门对mysqldump.pt-archive.mydumper做了一下对别,粗浅研究,以备将来使用.   msqldump pt-archive ...

  2. JQ自定义下拉列表插件

    自从上次做了JQ自定义分页插件和表格插件后,就没在自定义过插件了,这一个月都在用linq和ef,基本前端都没怎么去碰了,今天有个同事说有个项目需要在下拉框里面带有复选框,本来想网上找下插件的,一想,其 ...

  3. Java容器-引用数据类型排序+TreeSet、TreeMap底层实现

    目录 1.冒泡排序的实现 2.比较接口(普通数据类型.引用数据类型) 普通数据类型:冒泡排序 引用数据类型:包装类(Integer.String.Character.Date) 自定义类型:实体类:i ...

  4. drbd + pacemaker

    Centos6.5 X86 64 2014-04-27 # yum -y install corosync pacemaker # -.el6.x86_64.rpm pssh--.el6.x86_64 ...

  5. 微信小程序背景音频播放分享功能

    如果正常背景音频播放的话,只能跳转到自己对应的微信小程序,无法分享朋友圈,我们需要设置分享朋友圈,需要调用一个API 音频背景播放 注意:背景播放在锁屏后播放只支持IOS端,安卓端虽然可以播放,但是锁 ...

  6. ASIHTTPRequest的环境配置和使用示例

    ASIHTTPRequest类库是基于ISO SDK的一组网络请求的API.IOS SDK的网络组件CFNetwork API操作起来非常复杂.而ASIHTTPRequest类库是对CFNetwork ...

  7. Java常量定义需要注意事项及static作用(复习)

    在任何开发语言中,都需要定义常量.在Java开发语言平台中也不例外.不过在Java常量定义的时候,跟其他语言有所不同.其有自己的特色.在这篇文章中,主要针对Java语言中定义常量的注意事项进行解析,帮 ...

  8. osgi实战学习之路:2. maven+maven-bundle-plugin+karaf搭建osgi之HelloWorld

    环境准备: jdk版本号 jdk:1.7 karaf: 版本号:apache-karaf-3.0.1 下载地址: http://pan.baidu.com/s/1qWM4Y1u http://kara ...

  9. Java设计模式菜鸟系列(十七)桥接模式建模与实现

    转载请注明出处:http://blog.csdn.net/lhy_ycu/article/details/40008711 桥接模式(Bridge): 把事物和其详细实现分开(抽象化与实现化解耦),使 ...

  10. PAT 1033. To Fill or Not to Fill (贪心)

    PAT-A的最后一题,最终做出来了... 是贪心,通过局部最优获得全局最优. 1. 将加油站按距离升序排序 2. 记录当前所在的加油站index,存有的汽油,花费.向后遍历全部 该站可抵达的加油站 3 ...