本文共 1996 字,大约阅读时间需要 6 分钟。
在table表中,我们经常会选中多条记录,获取他们的数据,进行操作。
代码如下:
1)获取选中行的长度,进行判断。
var len = $("input[name=boxs]:checked").length;
2) 获取选中的行,通过each 函数进行遍历。
var check = $("input[name=boxs]:checked");
3) 获取选中的某一行。
var row = $(this).parent("td").parent("tr");
4)通过name,获取你想要获取的值。
var id = row.find("[name='tempId']").val();
var remarks = row.find("[name='tempRemarks']").val();5)将获取的数据保存到一个数组中
check_val.push( {id:id,remarks:remarks});
function deliver() { var len = $("input[name=boxs]:checked").length; if(len == 0){ alert("请选择一条记录!"); }else{ var check_val = []; var check = $("input[name=boxs]:checked"); check.each(function(){ var row = $(this).parent("td").parent("tr"); var id = row.find("[name='tempId']").val(); var remarks = row.find("[name='tempRemarks']").val(); check_val.push( {id:id,remarks:remarks}); }) $.ajax({ url : "${ctx}/templan/templanprocurement/templanProcurement/deliver", data : JSON.stringify(check_val), type:"POST", contentType:'application/json;charset=utf-8', success : function(data){ if(data.success){ window.location.reload(); jp.success(data.msg); }else{ jp.error(data.msg); } } }) } };
1)通过ajax函数发起请求。
2)将数组对象转换为string类型进行传递。
JSON.stringify(check_val)
1)通过JSON对象,将string转换list。
List<TemplanProcurementList> tempList =JSON.parseArray(data,TemplanProcurementList.class);
@ResponseBody @RequiresPermissions(value={"templan:templanprocurement:templanProcurement:deliver"},logical=Logical.OR) @RequestMapping(value = "deliver") public AjaxJson deliver(@RequestBody String data, RedirectAttributes redirectAttributes) throws Exception{ AjaxJson j = new AjaxJson(); try { ListtempList =JSON.parseArray(data,TemplanProcurementList.class); //新增或编辑表单保存 templanProcurementService.save(tempList);//保存 j.setSuccess(true); j.setMsg("发货成功"); } catch (Exception e) { j.setMsg("发货失败"); } return j; }
转载地址:http://pjfoi.baihongyu.com/