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="保 存"/>&nbsp;</shiro:hasPermission>
<input id="btnCancel" class="btn" type="button" value="返 回" onclick="history.go(-1)"/>
</div>
</form:form>
</body>
</html>

后台

/**
* Copyright &copy; 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转入后台,后台接受的更多相关文章

  1. ZH奶酪:PHP如何判断提交表单中多个复选框是否选中?

    1.name命名为数组,例如“select[]” 2.例如这样选: 3.在后台使用$_POST['select']得到数组 4.然后就可以看到得到的数组了 原文链接:http://www.zhihu. ...

  2. php表单中如何获取单选按钮与复选按钮的值

    php代码中获取表单中单选按钮的值:(单选按钮只能让我们选择一个,这里有一个"checked"属性,这是用来默认选取的,我们每次刷新我们的页面时就默认为这个值.) 例:<fo ...

  3. 使用val()方法设置表单中的默认选中项

    有时候我们展示给用户的表单中的checkbox,radio,selec等标签的一些项是默认选中的.比方:当用户改动文章的时候,假设相应的栏目为下拉框的话,那么它的默认选中值应该是原来的栏目位置. 能够 ...

  4. 今天在研究jquery用ajax提交form表单中得数据时,学习到了一种新的提交方式

    今天在研究jquery用ajax提交form表单中得数据时,学习到了一种新的提交方式 jquery中的serialize() 方法 该方法通过序列化表单值,创建 URL 编码文本字符串 序列化的值可在 ...

  5. jquery验证表单中的单选与多选

    jquery验证表单中的单选与多选 这里所说的,用jquery去验证某一组多选至少要有一个选中,某一组单选至少有一个选中,,大家都知道单一的一个用js比较好验证,但是想要用jquery的验证并且用到j ...

  6. php表单中如何获取单选按钮与复选按钮的值(示例)

    转载:http://www.php.cn/php-weizijiaocheng-360027.html php代码中获取表单中单选按钮的值:(单选按钮只能让我们选择一个,这里有一个“checked”属 ...

  7. Ajax在表单中的应用

    ajax在注册用户表单中的使用 1.验证用户名是否被使用 2.获取手机短信验证码 3.点击表单中的图片刷新,可实现刷新图片验证码 <!DOCTYPE html> <html> ...

  8. 转:表单中Readonly和Disabled的区别(HTML中使用javascript解除禁止input输入框代)

    转:表单中Readonly和Disabled的区别 参考资料: disabled和readonly区别: 参考博文1地址:http://blog.csdn.net/symgdwyh/article/d ...

  9. 快速获取表单多条数据,使用ajax传递给后台

    当表单中有多条数据需要向后台传递时,一个一个的获取显然是不可取的办法,可以借助表单的serialize()方法获取. HTML: <form id="form"> &l ...

随机推荐

  1. 解决kali无法连接网络问题

    键入 ifconfig -a 查看网卡 ,是否存在 键入 leafpad /etc/network/interfaces 查看其中是否有如下语句,没有添加上即可:auto eth0iface eth0 ...

  2. PAT 甲级 1035 Password (20 分)(简单题)

    1035 Password (20 分)   To prepare for PAT, the judge sometimes has to generate random passwords for ...

  3. spring redistemplate中setHashValueSerializer的设置

    笔者曾经对redis键值使用了不同类型的序列化方法 用过默认值.JdkSerializationRedisSerializer.StringRedisSerializer还用改以下自定类型的序列化工具 ...

  4. ElasticSearch文档删除字段

    https://www.cnblogs.com/ljhdo/archive/2017/03/24/4885796.html

  5. Python3之定制类

    看到类似的__slots__这种形如__xxx__的变量或者函数名就要注意,这些在Python中是有特殊用途的 Python中还有许多有特殊用途的函数,可以帮助我们定制类 __str__ 先定义一个S ...

  6. MyBatis 的案例

    首先我们需要先下载jar包 其次我们书写具体的内容 Student  Class package entity; /* * 学生类 * */ public class Student { //学生编号 ...

  7. 【c# 学习笔记】多态

    由于可以继承基类的所有成员,子类就都有了相同的行为,但是有时子类的某些行为需要相互区别,子类需要覆写父类中的方法来实现子类特有的行为,这样 的技术在面向对象的编程中就是多态. 多态即相同类型的对象调用 ...

  8. 【c# 学习笔记】c#中的语句

    1.条件语句: if语句: bool condition = true; if (condition) { } else if (condition) { } else { } switch语句: b ...

  9. 1.Cloudera Manager安装

    安装环境采用2台虚拟机进行,一台master, 一台slave1 先安装好centos 6.5 两台,并设置静态ip 怎么安装可以参考地址:https://jingyan.baidu.com/arti ...

  10. Feign【首次请求失败】

    当feign和ribbon整合hystrix之后,可能会出现首次调用失败的问题,出现原因分析如下: hystrix默认的超时时间是1秒,如果接口请求响应超过这个时间,将会执行fallback,spri ...