`

Jsp页面通过勾选复选框实现批量删除

    博客分类:
  • java
 
阅读更多
一、将前台jsp页面中的所有你要用到checkbox的name值设为相同
二、在后台获取参数时,使用数组获取:
三、进行数组必要的格式转换,再进行sql操作

Jsp 页面
<input type='checkbox' name='chk' id='chk' value="+empId+">
<input type="checkbox" name="allchk" id="allchk" onclick="allCheck(this);"/>全选
<input class="btnBlue mL10 ygDelRow" value="删除" onclick="deleteContactor();" type="button">
<input id="delstrs"  value="" type="hidden">

全选按钮的函数
//全选按钮
function allCheck(check){
        var checkbox=document.getElementsByName("chk");
        if(check.checked){
        	for(var i=0;i<checkbox.length;i++){
        		checkbox[i].checked="checked";
        	}    	
        }else{
        	for(var i=0;i<checkbox.length;i++){
        		checkbox[i].checked="";
        	} 
        }
}


删除员工的函数
//删除员工
function deleteContactor(){
	
	var empId="";
    var sel=document.getElementsByName("chk");//获取checkbox的值
    for( var i=0;i<sel.length;i++)
        if(sel[i].checked==true)
        	empId+=sel[i].value+"~";
	  if(empId === undefined || empId === ''){
		  alert("请至少选择一条记录!");
		  return ;
	  }
	  $("#delstrs").val(empId);
	  $.popup($(".zctjcg"));
	    $('.zctjcg').show();
	    $('.maskBlack').show();
	 }
//确认删除
function confirmDelete(){
//	 if(confirm("您确定删除选定的员工信息?")){
		var empId= $("#delstrs").val();
		var url = GETFRONTUSERSTRING+"doDelEmp.action";
		var param = {
			empId:empId
		};
		try{
		new AjaxRequest(url,{
			parameters:param,
			onComplete:function(data){
				$(".zctjcg").hide();
				$(".maskBlack").hide();
				doStaffQuery();
			},
			onFail:function(){
				return false;
			}
		});
		}catch(e){
			alert(e.message);
			$(".zctjcg").hide();
			$(".maskBlack").hide();			
	      return;
		}
	  }

//后台获取参数
	String empId = this.getAjaxParameter("empId");
        String [] empIds = empId.split("~"); 

  /** 
     * 获取Get方式的Ajax请求参数解码值
     * 实际上就是调用request.getParameter方法获得参数,然后再进行编码转换 
     */
    public String getAjaxParameter(String paramName) { 
    	if (paramName == null) {
    		return null;
    	}
        String value = this.getRequest().getParameter(paramName);  
        String decodedValue = this.getDecodedValue(value);
        
        return decodedValue;  
    }


//数据库修改值批量更新
ManagerFactory.getEnterpriseEmpManager().updateEmpStatus(empIds,sessionUser.getUserId());


//dao层方法具体实现
	public int[] batchUpdateEmpStatus(final String[] empIds, final String userId) {
		String sql = "update aes_enterprise_emp p set status = ? ,operator = ? , operatetime = ? where p.enterpriseempid=?";
		return this.batchUpdate(sql.toString(), new BatchPreparedStatementSetter() {
			public void setValues(PreparedStatement ps, int index) throws SQLException {
				String empid=empIds[index];
				ps.setString(1, "0");
				ps.setString(2, userId);
				ps.setTimestamp(3,new Timestamp(new Date().getTime()));
				ps.setString(4, empid);
			}
			@Override
			public int getBatchSize() {
				return empIds.length;
			}
		});
      
	}


底层dao
	 protected int[] batchUpdate(String sql, BatchPreparedStatementSetter setter) {
			logManager.info(this.getClass(), sql);
			
	        return getJdbcTemplate().batchUpdate(sql, setter);
	 }


//效果图



  • 大小: 15.6 KB
  • 大小: 11.6 KB
分享到:
评论

相关推荐

    Servlet+jsp(有接口批量删除)

    这通常通过复选框和提交按钮来实现。每个记录前都有一个复选框,用户勾选后表示要删除该记录。 2. **数据传递**:当用户点击批量删除按钮,JSP页面会向Servlet发送一个HTTP请求,请求中包含所有被选中的记录ID。这...

    Jquery复选框的值

    在"Jquery复选框的值"这个主题中,我们将探讨如何利用jQuery实现批量获取复选框的值,并通过一个简单的`index.jsp`示例来阐述这一过程。 首先,我们需要了解HTML中复选框的基本结构。复选框通常使用`&lt;input&gt;`元素的...

    jsp批量删除用户信息

    这通常通过多选框实现,每个用户行前都有一个复选框供用户选择。 2. **用户选择**:用户在列表中勾选想要删除的用户,这些选择可以通过JavaScript或者jQuery等前端库来收集和处理。 3. **数据提交**:当用户点击...

    jQuery+ajax实现批量删除功能完整示例

    首先,批量删除的核心在于用户通过勾选复选框选择待删除的项。在提供的代码片段中,我们看到每个表格行都有一个与之关联的复选框。例如: ```html &lt;td&gt;&lt;input type="checkbox" value="10001"&gt; &lt;td&gt;10001 标题1 ...

    一览画面点击复选框后获取多个id值的方法

    在web开发中经常会遇到一览画面中每一条记录前都带一个复选框,点击后选中该条记录进行删除、修改、查看等操作。 修改和查看都是获取一条记录的id值后传递到后台进行查询获取该记录对象的各种属性值,再显示到画面上...

    表格中全选按钮的使用以及删除功能的实现

    在页面上添加一个`&lt;input type="checkbox"&gt;`作为全选按钮,当用户点击该按钮时,通过JavaScript遍历所有行中的复选框(假设每个数据行都有一个对应的复选框),并设置它们的状态为选中。例如,你可以添加以下...

    jsp 批量修改, 分页

    3. **用户交互**:添加复选框允许用户选择需要修改的记录,并提供提交按钮触发修改操作。 4. **提交处理**:当用户点击提交按钮,JSP页面通过POST请求将选定的记录ID和新的值发送到服务器。在服务器端,这些信息...

    模拟select带checkbox全选反选取消插件tomcat发布使用

    复选框在Web界面中广泛用于提供多选选项,用户可以自由地勾选或取消勾选,而全选和反选功能则进一步增强了用户体验,使得批量操作变得更加便捷。 综上所述,这个插件是为了解决HTML Select控件不支持多选的问题而...

    editplus 代码编辑器html c++ jsp css

    在替换对话框里面,勾选“正则表达式”复选框; 在查找内容里面输入“[0-9][0-9][0-9]”,不含引号 “替换为:”里面输入“[\0\1\2]”,不含引号 范围为你所操作的范围,然后选择替换即可。 实际上这也是正则表达式...

    HTMLTable-开源

    这在管理界面中尤其实用,用户可以通过勾选复选框一次性处理多个条目。 4. **JSP/Servlet API集成**:HTMLTable与Java服务器端API紧密集成,可以直接在JSP页面中使用,通过Servlet来处理请求和响应,提供了便捷的...

    javapms门户网站源码

    管理员也可以通过勾选每条评论前面的复选框,对评论进行批量删除或审核。评论详情如下图所示: 网友在前台可以对评论进行回复或顶操作,支持评论堆楼的效果,如下图所示: 2.4.2. 留言管理 点击“功能组件”左侧...

Global site tag (gtag.js) - Google Analytics