from表单中checkbox的多选,ajax转入后台,后台接受
var check = [];//定义一个空数组
			          $("input[name='category']:checked").each(function(i){//把所有被选中的复选框的值存入数组
			              check[i] =$(this).val();
			          });
			          $.ajax({
			     		  type : "post",
			     		  url : "${ctx}/ask/ask/check",
			     		  data : {"check":check},
			     		  traditional:true,
			     		  datatype:"json",
			     		  success:function(dates){
},
			     		  error: function() {
			     		    alert("失败,请稍后再试!");
			     		  }
			     		 });

<div id="check">
		<label class="control-label">设备:</label>
			<div class="controls">
				<c:forEach var="list" items="${askc.eqc}" varStatus="">
					<input type="checkbox" id="checkbox" name="category" value="${list.eqId }" />${list.eqName}<br>
				</c:forEach>
			</div>
	   </div>

------------------------------------------------------
ajax 转入 traditional:true,必须写
后台接受
@ResponseBody
	@RequestMapping(value = "check")
	public static String[]  check(HttpServletRequest request) {
		 ids=request.getParameterValues("check");
		return ids;
	}
ids=request.getParameterValues("check");

前台
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ include file="/WEB-INF/views/include/taglib.jsp"%>
<html>
<head>
	<title>巡检任务成功管理</title>
	<meta name="decorator" content="default"/>
	<script type="text/javascript">
		$(document).ready(function() {
			//$("#name").focus();
			$("#inputForm").validate({
				submitHandler: function(form){
					loading('正在提交,请稍等...');
					var check = [];//定义一个空数组
			          $("input[name='category']:checked").each(function(i){//把所有被选中的复选框的值存入数组
			              check[i] =$(this).val();
			          });
			          $.ajax({
			     		  type : "post",
			     		  url : "${ctx}/ask/ask/check",
			     		  data : {"check":check},
			     		  traditional:true,
			     		  datatype:"json",
			     		  success:function(dates){
},
			     		  error: function() {
			     		    alert("失败,请稍后再试!");
			     		  }
			     		 });
					form.submit();
				},
				errorContainer: "#messageBox",
				errorPlacement: function(error, element) {
					$("#messageBox").text("输入有误,请先更正。");
					if (element.is(":checkbox")||element.is(":radio")||element.parent().is(".input-append")){
						error.appendTo(element.parent().parent());
					} else {
						error.insertAfter(element);
					}
				}
			});
		});
	</script>
</head>
<body>
	<ul class="nav nav-tabs">
		<li><a href="${ctx}/ask/ask/">巡检任务成功列表</a></li>
		<li class="active"><a href="${ctx}/ask/ask/form?id=${ask.id}">巡检任务成功<shiro:hasPermission name="ask:ask:edit">${not empty ask.id?'修改':'添加'}</shiro:hasPermission><shiro:lacksPermission name="ask:ask:edit">查看</shiro:lacksPermission></a></li>
	</ul><br/>
	<form:form id="inputForm" modelAttribute="ask" action="${ctx}/ask/ask/save" method="post" class="form-horizontal">
		<form:hidden path="id"/>
		<sys:message content="${message}"/>		
		<div class="control-group">
			<label class="control-label">巡检任务名称:</label>
			<div class="controls">
				<form:input path="name" htmlEscape="false" maxlength="255" class="input-xlarge "/>
			</div>
		</div>
		<div id="check">
		<label class="control-label">设备:</label>
			<div class="controls">
				<c:forEach var="list" items="${askc.eqc}" varStatus="">
					<input type="checkbox" id="checkbox" name="category" value="${list.eqId }" />${list.eqName}<br>
				</c:forEach>
			</div>
	   </div>
	   <br>
		<div class="control-group">
			<label class="control-label">巡检人:</label>
			<div class="controls">
				<form:select path="askUser" class="input-xlarge ">  
				        <option value="">请选择</option>  
				        <c:forEach items="${ask.wu}" var="list">  
				                <option value="${list.wuId}">${list.wuName}</option>  
				        </c:forEach>  
				</form:select>
			</div>
		</div>
		<div class="control-group">
			<label class="control-label">任务截止时间:</label>
			<div class="controls">
				<input name="askTime" type="text" readonly="readonly" maxlength="20" class="input-medium Wdate "
					value="<fmt:formatDate value="${ask.askTime}" pattern="yyyy-MM-dd HH:mm:ss"/>"
					onclick="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss',isShowClear:false});"/>
			</div>
		</div>
		<div class="control-group">
			<label class="control-label">已检设施数:</label>
			<div class="controls">
				<form:input path="useNum" htmlEscape="false" maxlength="255" class="input-xlarge "/>
			</div>
		</div>
		<div class="control-group">
			<label class="control-label">未检设施数:</label>
			<div class="controls">
				<form:input path="unNum" htmlEscape="false" maxlength="255" class="input-xlarge "/>
			</div>
		</div>
		<div class="control-group">
			<label class="control-label">异常设施数:</label>
			<div class="controls">
				<form:input path="ycNum" htmlEscape="false" maxlength="255" class="input-xlarge "/>
			</div>
		</div>
		<div class="control-group">
			<label class="control-label">备注:</label>
			<div class="controls">
				<form:input path="remark" htmlEscape="false" maxlength="255" class="input-xlarge "/>
			</div>
		</div>
		<div class="control-group">
			<label class="control-label">任务状态:</label>
			<div class="controls">
				<form:select path="askStatus" class="input-xlarge required">
					<form:option value="" label=""/>
					<form:options items="${fns:getDictList('amp_ask')}" itemLabel="label" itemValue="value" htmlEscape="false"/>
				</form:select>
			</div>
		</div>
		<div class="form-actions">
			<shiro:hasPermission name="ask:ask:edit"><input id="btnSubmit" class="btn btn-primary" type="submit" value="保 存"/> </shiro:hasPermission>
			<input id="btnCancel" class="btn" type="button" value="返 回" onclick="history.go(-1)"/>
		</div>
	</form:form>
</body>
</html>
后台
/**
 * Copyright © 2012-2014 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved.
 */
package com.thinkgem.jeesite.modules.ask.web;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import com.thinkgem.jeesite.common.config.Global;
import com.thinkgem.jeesite.common.persistence.Page;
import com.thinkgem.jeesite.common.web.BaseController;
import com.thinkgem.jeesite.common.utils.StringUtils;
import com.thinkgem.jeesite.modules.ask.entity.Ask;
import com.thinkgem.jeesite.modules.ask.entity.Eq;
import com.thinkgem.jeesite.modules.ask.entity.Wuask;
import com.thinkgem.jeesite.modules.ask.service.AskService;
import com.thinkgem.jeesite.modules.order.entity.Equiporder;
import com.thinkgem.jeesite.modules.order.service.EquiporderService;
/**
 * 巡检任务成功Controller
 * @author wu
 * @version 2018-08-02
 */
@Controller
@RequestMapping(value = "${adminPath}/ask/ask")
public class AskController extends BaseController {
@Autowired
	private AskService askService;
	@Autowired
	private EquiporderService equiporderService;
@ModelAttribute
	public Ask get(@RequestParam(required=false) String id) {
		Ask entity = null;
		if (StringUtils.isNotBlank(id)){
			entity = askService.get(id);
		}
		if (entity == null){
			entity = new Ask();
		}
		return entity;
	}
	public static String[] ids=null;
@RequiresPermissions("ask:ask:view")
	@RequestMapping(value = {"list", ""})
	public String list(Ask ask, HttpServletRequest request, HttpServletResponse response, Model model) {
		Page<Ask> page = askService.findPage(new Page<Ask>(request, response), ask); 
		model.addAttribute("page", page);
		return "modules/ask/askList";
	}
@ResponseBody
	@RequestMapping(value = "lists")
	public List<Ask> lists(Ask ask) {
		List<Ask> mapList =askService.lists(ask);
		return mapList;
	}
@RequiresPermissions("ask:ask:view")
	@RequestMapping(value = "form")
	public String form(Ask ask, Model model) {
//		Equiporder equiporder=new Equiporder();
//		equiporder.setWueqId("b9ed96d1b716491f8fc4f71f3705c50a");
//		List<Equiporder> mapList =equiporderService.findUserList(equiporder);
//		List<Wuask> areaMapList=new ArrayList<Wuask>();
//		Wuask areaMap=new Wuask();
//		for (Equiporder alarm2 : mapList) {
//			areaMap.setWuId(alarm2.getWuId());
//			areaMap.setWuName(alarm2.getWuName());
//			areaMapList.add(areaMap);
//			areaMap=new Wuask();
//		}
//		ask.setWu(areaMapList);
		//---------------------------------------
//		Ask ask1=new Ask();
//		Eq e=new Eq();
//		List<Eq> areaList=new ArrayList<Eq>();
//		List<Ask> mapList1 =askService.lists(ask1);
//		for (Ask alarm2 : mapList1) {
//			e.setEqName(alarm2.getEqName());
//			e.setEqId(alarm2.getEqId());
//			areaList.add(e);
//			e=new Eq();
//		}
//		ask.setEqc(areaList);
		model.addAttribute("ask", ask);
		return "modules/ask/askForm";
	}
	@RequiresPermissions("ask:ask:view")
	@RequestMapping(value = "formselect")
	public String formselect(Ask ask, Model model) {
		Equiporder equiporder=new Equiporder();
		equiporder.setWueqId("b9ed96d1b716491f8fc4f71f3705c50a");
		List<Equiporder> mapList =equiporderService.findUserList(equiporder);
		List<Wuask> areaMapList=new ArrayList<Wuask>();
		Wuask areaMap=new Wuask();
		for (Equiporder alarm2 : mapList) {
			areaMap.setWuId(alarm2.getWuId());
			areaMap.setWuName(alarm2.getWuName());
			areaMapList.add(areaMap);
			areaMap=new Wuask();
		}
		ask.setWu(areaMapList);
		//---------------------------------------
//		Ask ask1=new Ask();
		Eq e=new Eq();
		List<Eq> areaList=new ArrayList<Eq>();
		List<Ask> mapList1 =askService.lists(ask);
		for (Ask alarm2 : mapList1) {
			e.setEqName(alarm2.getEqName());
			e.setEqId(alarm2.getEqId());
			areaList.add(e);
			e=new Eq();
		}
		ask.setEqc(areaList);
		model.addAttribute("askc", ask);
		return "modules/ask/xzaskForm";
	}
	@ResponseBody
	@RequestMapping(value = "check")
	public static String[]  check(HttpServletRequest request) {
		 ids=request.getParameterValues("check");
		return ids;
	}
@RequiresPermissions("ask:ask:edit")
	@RequestMapping(value = "save")
	public String save(Ask ask, Model model, RedirectAttributes redirectAttributes,HttpServletRequest request){
		if (!beanValidator(model, ask)){
			return form(ask, model);
		}
		if(ids==null){
			addMessage(redirectAttributes, "没有选择设备");
			return "redirect:"+Global.getAdminPath()+"/ask/ask/?repage";
		}
//		for (int i = 0; i < ids.length; i++) {
//			String s=ids[i];
//		}
		askService.save(ask,ids);
		addMessage(redirectAttributes, "保存巡检任务成功成功");
		return "redirect:"+Global.getAdminPath()+"/ask/ask/?repage";
	}
@RequiresPermissions("ask:ask:edit")
	@RequestMapping(value = "delete")
	public String delete(Ask ask, RedirectAttributes redirectAttributes) {
		askService.delete(ask);
		addMessage(redirectAttributes, "删除巡检任务成功成功");
		return "redirect:"+Global.getAdminPath()+"/ask/ask/?repage";
	}
}
从数据库中取数据放入前台,checkbox里面的值(由数据库中来)


from表单中checkbox的多选,ajax转入后台,后台接受的更多相关文章
- ZH奶酪:PHP如何判断提交表单中多个复选框是否选中?
		
1.name命名为数组,例如“select[]” 2.例如这样选: 3.在后台使用$_POST['select']得到数组 4.然后就可以看到得到的数组了 原文链接:http://www.zhihu. ...
 - php表单中如何获取单选按钮与复选按钮的值
		
php代码中获取表单中单选按钮的值:(单选按钮只能让我们选择一个,这里有一个"checked"属性,这是用来默认选取的,我们每次刷新我们的页面时就默认为这个值.) 例:<fo ...
 - 使用val()方法设置表单中的默认选中项
		
有时候我们展示给用户的表单中的checkbox,radio,selec等标签的一些项是默认选中的.比方:当用户改动文章的时候,假设相应的栏目为下拉框的话,那么它的默认选中值应该是原来的栏目位置. 能够 ...
 - 今天在研究jquery用ajax提交form表单中得数据时,学习到了一种新的提交方式
		
今天在研究jquery用ajax提交form表单中得数据时,学习到了一种新的提交方式 jquery中的serialize() 方法 该方法通过序列化表单值,创建 URL 编码文本字符串 序列化的值可在 ...
 - jquery验证表单中的单选与多选
		
jquery验证表单中的单选与多选 这里所说的,用jquery去验证某一组多选至少要有一个选中,某一组单选至少有一个选中,,大家都知道单一的一个用js比较好验证,但是想要用jquery的验证并且用到j ...
 - php表单中如何获取单选按钮与复选按钮的值(示例)
		
转载:http://www.php.cn/php-weizijiaocheng-360027.html php代码中获取表单中单选按钮的值:(单选按钮只能让我们选择一个,这里有一个“checked”属 ...
 - Ajax在表单中的应用
		
ajax在注册用户表单中的使用 1.验证用户名是否被使用 2.获取手机短信验证码 3.点击表单中的图片刷新,可实现刷新图片验证码 <!DOCTYPE html> <html> ...
 - 转:表单中Readonly和Disabled的区别(HTML中使用javascript解除禁止input输入框代)
		
转:表单中Readonly和Disabled的区别 参考资料: disabled和readonly区别: 参考博文1地址:http://blog.csdn.net/symgdwyh/article/d ...
 - 快速获取表单多条数据,使用ajax传递给后台
		
当表单中有多条数据需要向后台传递时,一个一个的获取显然是不可取的办法,可以借助表单的serialize()方法获取. HTML: <form id="form"> &l ...
 
随机推荐
- log4j:ERROR setFile(null,true) call failed.错误解决
			
首先说明,我是用hive执行bin/hiveserver2时出现的这个错误.如下图所示,红框中的内容也清晰的告诉我们出错的原因和文件路径. 之后,我查看了一下该路径.发现我用的是beifeng的用户, ...
 - Linux (Ubuntu)安装ssh
			
看ssh服务是否启动 打开"终端窗口",输入sudo ps -e |grep ssh 回车有sshd,说明ssh服务已经启动, 如果没有启动,输入sudo service ssh ...
 - 动态绑定easyui datagrid列名
			
根据实时数据在同一个DataGrid中显示不同字段,本身easyui并没有支持动态绑定列名,只有show属性显示或隐藏某字段.今天在网上看到直接修改easyui类库动态绑定列名的方法,废话不多说直接借 ...
 - Linq to sql中继承类映射转换问题
			
类型为的数据成员“Int32 VTOUID”不是类型的映射的一部分.该成员是否位于继承层次结构根节点的上方? 想躲开Linq to sql中问题限制可真是不容易: http://www.makaido ...
 - 【VS开发】【C++开发】const在函数前与函数后的区别
			
const在函数前与函数后的区别 一 const基础 如果const关键字不涉及到指针,我们很好理解,下面是涉及到指针的情况: int b = ...
 - MAC OS brew的使用
			
brew 是 Mac 下的一个包管理工具,类似于 centos 下的 yum,可以很方便地进行安装/卸载/更新各种软件包,例如:nodejs, elasticsearch, kibana, mysql ...
 - Python中logging在多进程环境下打印日志
			
因为涉及到进程间互斥与通信问题,因此默认情况下Python中的logging无法在多进程环境下打印日志.但是查询了官方文档可以发现,推荐了一种利用logging.SocketHandler的方案来实现 ...
 - windows使用sqlpus连接oracle 数据库
			
1.先安装好Instant Client程序. 2.打开cmd 执行sqlplus命令,如果出现如下图 2.说明需要把oracle install 的bin目类 添加系统环境path中,如下图添加环境 ...
 - VC++:创建,调用Win32静态链接库
			
概述 DLL(Dynamic Linkable Library)动态链接库,Dll可以看作一种仓库,仓库中包含了可以直接使用的变量,函数或类. 仓库的发展史经历了"无库" ---& ...
 - AlgorithmMap Dev Log
			
Log 2019.08.29 ------------------------------------------------------------------------------------- ...