多个Form提交同一地址技巧(form序列化提交 java反序列化表单)
2016-05-23 10:56
471 查看
要用到的包:
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
1、前端部分为提交按钮添加事件:
if(str!=null && str!=""){
JSONArray jsonArray = JSONArray.fromObject(str);
for(int i=0; i<jsonArray.size(); i++){
JSONObject jobj = jsonArray.getJSONObject(i);
if(!jobj.isEmpty()){
<span style="color:#FF6666;"> //TODO处理每一个json对象,以下是demo</span>
String receivers[]=jsonArray.getJSONObject(i).getString("contact").split(",");
String amount=jsonArray.getJSONObject(i).getString("amount");
String remark=jsonArray.getJSONObject(i).getString("remark");
String copytos="";copytos=jsonArray.getJSONObject(i).getString("fakecontact");
/*
具体业务
*/
}
}
}
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
1、前端部分为提交按钮添加事件:
//提交保存 $("#submitSave").click(function(){ var arr = new Array(); //序列化每个表单 $("form").each(function(){ var obj = $(this).serializeJson(); arr.push(obj); }); //转json var arrJson = JSON.stringify(arr); var data = { allParams : arrJson }; //if判断是自定义校验表单的数据 if(checkFormInput(arrJson)){ $.ajax({ type: "POST", data: data, url: ctx + "/portal/workinglog/workinglogAction!ajaxAdd.action", dataType: "JSON", success:function(data){ if(data.data.result=="ZSUCCESS"){ showMsg("","提交成功",1); location.href = ctx + "/jsp/wap/workinglog/submit_list.jsp"; }else{ showMsg("", "提交失败", 1); } } }); } }); //自定义序列化 (function($){ $.fn.serializeJson=function(){ var serializeObj={}; $(this.serializeArray()).each(function(){ serializeObj[this.name]=this.value; }); return serializeObj; }; })(jQuery); //上面所说的表单数据检验 function checkFormInput(arrJson){ var obj = JSON.parse(arrJson); if(obj==""){ 这个是封装的显示消息的方法,不必理会 showMsg("","请添加日志",1); return false; } for(var i=0; i<obj.length; i++){ if(obj[i].ADDCONDT==null || obj[i].ADDCONDT.trim()==""){ showMsg("","请输入工作内容",1); return false; } if(obj[i].BUSITYPE!="10"){ var s1 = "2016/03/22 " + obj[i].STARTIME +":00"; var s2 = "2016/03/22 " + obj[i].ENDTTIME +":00"; var d1 = new Date(s1); var d2 = new Date(s2); if(d1.getTime() >= d2.getTime()){ showMsg("","开始时间不能大于结束时间",1); return false; } } } return true; }2、后端反序列化
if(str!=null && str!=""){
JSONArray jsonArray = JSONArray.fromObject(str);
for(int i=0; i<jsonArray.size(); i++){
JSONObject jobj = jsonArray.getJSONObject(i);
if(!jobj.isEmpty()){
<span style="color:#FF6666;"> //TODO处理每一个json对象,以下是demo</span>
String receivers[]=jsonArray.getJSONObject(i).getString("contact").split(",");
String amount=jsonArray.getJSONObject(i).getString("amount");
String remark=jsonArray.getJSONObject(i).getString("remark");
String copytos="";copytos=jsonArray.getJSONObject(i).getString("fakecontact");
/*
具体业务
*/
}
}
}
相关文章推荐
- 个人学习-java-多线程
- java同步锁中sychronized和Lock接口类的区别
- java学习笔记-JavaWeb篇二
- java之google style
- Dubbo与Zookeeper、SpringMVC整合和使用(负载均衡、容错)
- MyEclipse文件查找技巧总结
- 接入支付宝即时到账接口-java
- MVC+EF+Spring.Net代码生成器
- java的同步机制synchronized
- java多线程
- Java线程池理解
- java连接sql server
- mave配置之spring.xml is not exeist
- 几种任务调度的 Java 实现方法与比较
- java 容器总结
- javaweb 在页面点击下载时,下载文件
- Spring+hibernate 多数据源切换
- hibernate实体对象的三种状态:自由状态,持久状态,游离状态.
- Java List转Map
- windows下基于Eclipse的Hadoop应用开发环境配置