页面传递Json对象,后台解析

使用的组件

前台组件:json2.js  来自 http://www.json.org/js.html

后台组件:json-lib-2.2.2-jdk15.jar

前台代码

1 通过页面生成json对象列表,然后转换成字符串

// 生成json对象 转字符串
	function makeTsJsonParam(){
		  var tsList = new Array();
		  var ts = {'tn_id':'','tn_trainSortie':'','tn_takeOffTime':'','tn_landingTime':'','tn_commander':'','tn_calendar':''};
		  var list1 = $(".flightid");
		  var list2 = $(".tn_trainSortie");
		  var list3 = $(".tn_takeOffTime");
		  var list4 = $(".tn_landingTime");
		//  var list5 = $(".tn_realityLandingTime");
		  var list6 = $(".tn_commander");
		//  var list7 = $(".tn_mechanician");
		//  var list8 = $(".tn_notes");
		  var list9 = $(".tn_calendar");
		  //alert(list1.length);
		  for (var i=0;i<list1.length;i++)
		  {
			  ts = {};
			  ts.tn_id = list1[i].value;
			  ts.tn_trainSortie = list2[i].value;
			  ts.tn_takeOffTime = list3[i].value;
			  //alert(list3[i].value)
			  ts.tn_landingTime= list4[i].value;
			//  ts.tn_realityLandingTime= list5[i].value;
			  ts.tn_commander= list6[i].value;
			//  ts.tn_mechanician= list7[i].value;
			//  ts.tn_notes= list8[i].value;
			  ts.tn_calendar= list9[i].value;

			  tsList[i] = ts;
		  }
		  var str = JSON.stringify( tsList );
		  return  str ;
	}	

2 把处理过的Json字符串 提交给后台

//  把json字符串传递给后台
	function saveAllTrainSortie(){
		var str = makeTsJsonParam();
		// alert(str)
		var htmlStr = "-1";
		$.ajax({
	       url:'../train/saveAllTrainFerrySortie.do',
	          //url:'${ctx}/index.jsp',
	          cache:false,
	          type:'post',
	          async:false,
	          dataType:'html',
	          data:{
	        	  trainSortieListStr:str,
	      		  contentType: "application/x-www-form-urlencoded;charset=utf-8"
	          },
	          success:function(html){
	              // alert("html:"+html)
	              htmlStr = html;
	          }
	      })
	      return htmlStr
   		 /*  if(htmlStr==1){
   			  alert("保存成功");
   		  } */
	}

后台代码

1 把字符串解析成 java对象  后处理。

public void saveAllTrainFerrySortie(HttpServletRequest request,HttpServletResponse response) {
			String trainSortieListStr = request.getParameter("trainSortieListStr");
			JSONArray array = JSONArray.fromObject(trainSortieListStr);
			for(int i=0;i<array.size();i++){
				Map ts=(Map)array.get(i);
				String tn_id = ""+ts.get("tn_id");
				String tn_trainSortie = ""+ts.get("tn_trainSortie");

				String tn_takeOffTime = ""+ts.get("tn_takeOffTime");
				String tn_landingTime = ""+ts.get("tn_landingTime");

				//	String tn_realityLandingTime = ""+ts.get("tn_realityLandingTime");
				String tn_commander = ""+ts.get("tn_commander");
				//	String tn_mechanician = ""+ts.get("tn_mechanician");
				//	String tn_notes = ""+ts.get("tn_notes");
				String tn_calendar = ""+ts.get("tn_calendar");
				trainSoriteFerryService.saveTrainSortie(tn_id, tn_trainSortie, tn_takeOffTime,
						tn_landingTime, tn_commander, tn_calendar);

			}
			try {
	            response.setCharacterEncoding("UTF-8");
	            PrintWriter pw = response.getWriter();
	            pw.write("1");
	            pw.flush();
	            pw.close();
	        } catch (IOException e) {
	            e.printStackTrace();
	        }
		}
时间: 2024-10-14 12:51:37

页面传递Json对象,后台解析的相关文章

Springmvc+mybatis配置前台页面传递JSON串给后台接收。

前台页面js方法: $(document).ready(function(){ var saveDataAry=[]; var data1={"id":5,"name":"益生元","province":"西藏"}; var data2={"id":6,"name":"好爸爸","province":"拉萨"

jq ajax传递json对象到服务端及contentType的用法

目录 0.一般情况下,通过键值对的方式将参数传递到服务端 1.ajax 传递复杂json对象到服务端 2.content-Type 对asp.net mvc项目的重要性 0.一般情况下,通过键值对的方式将参数传递到服务端 0.1 客户端代码: $.ajax({ url: 'TestHandler.ashx', type: 'post', data: { name: "admin", age: 10 }, dataType: 'text', success: function (data

$.ajax传递json对象到后台

var mall = { MallID: $("#createId").val().trim(), MallName: $("#createName").val().trim(), HomeURL: $("#chomeurl").val().trim(), PayNotifyURL: $("#cpayurl").val().trim(), RefundNotifyURL: $("#crepayurl").v

JSP+AJAX获取或者传递JSON对象以及参数

commodityList.jsp 第一步:创建 名为"ajax" 的 Java Web项目. 第二步:加入struts2的jar包,这里需要四个包 freemarker.jar  ognl.jar  struts2-core.jar  commons-fileupload.jar  commons-io.jar   xwork-core-2.1.6.jar(这个包加上版本号,是因为下文要提到它),这六个包是struts必须依赖的jar包,什么好说的. 第三步:修改 web.xml 加

jQuery调用WCF服务传递JSON对象

下面这个示例使用了WCF去创建一个服务端口从而能够被ASP.Net页面通过jQuery的AJAX方法访问,我们将在客户端使用Ajax技术来 与WCF服务进行通信.这里我们仅使用jQuery去连接Web Service,而不去使用ASP.Net AJAX库,至于为什么不使用AJAX库中,那是因为我们在项目中已经使用了jQuery,而它已经能处理全部的AJAX请求和所有功能,并且,如果我们 一旦使用ASP.NET AJAX库,我们也必须多包含一个超过80Kb的数据量(调试模式下会更大),但这也不是说

JSON字符串——后台解析系列

以前我们都是讲JSON字符串获取后,在前台进行展示.今天小编就交给大家后台解析展示数据的方法.非常方便,就以下代码: JObject obj = JObject.Parse(data); string serial_number = obj["entry"]["serial_number"].ToString(); string level_1 = obj["entry"]["field_23"]["level_1&

JSON对象的解析,JSON.stringify()/JSON.parse()的用法

ECMAScript 5 对解析 JSON 的行为进行规范,定义了全局对象 JSON .支持这个对象的浏览器有 IE 8+.Firefox 3.5+.Safari 4+.Chrome 和Opera 10.5+. JSON 对象有两个方法: stringify() 和 parse() 用法如下: JSON.stringify()的用法/参数介绍 1.JSON.stringify(jsonObj),jsonObj为JSON数据,该方法是将JSON格式的数据,序列化成字符串类型 var bigWeb=

Asp.Net WebAPI传递json对象、后台手动接收参数

1.前台代码 /* * 跨域请求Post * 1个对象参数,后台JObject接受 */ $.post(apiUrl.getOne("PostFourth"), { name: '张三', age: 12 }, function (data) { alert(data); }); $.ajax({ url: apiUrl.getOne("PostFourth"), data: { name: '张三', age: 12 }, type: 'post', succes

ajax 传递JSON对象参数

https://msdn.microsoft.com/zh-cn/library/cc836466(v=vs.94).aspx https://msdn.microsoft.com/zh-cn/library/cc836459(v=vs.94).aspx //前台 $.ajax({ url:"", data: {aa: JSON.stringify(param)}            转换 success:function(){ } }) //后台 JSON转对象就OK了