几种常用的ajax配合json数据格式向后台发送请求以及后台如何接收数据

前端之家收集整理的这篇文章主要介绍了几种常用的ajax配合json数据格式向后台发送请求以及后台如何接收数据前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

一、$.ajax()(无刷新)

  • jsonp格式:以url形式传递拼接数据:http://192.168.1.1/pwc/esb?gn=tx&cz=list&id=1&shzt=5
	var param = {id:$("#cxsq_xk_id").val(),shzt:$('input[name="cxsq_sfcd"]:checked').val()}
	$.ajax({
		type: "POST",//请求方式 post
		dataType : 'jsonp',//数据类型 jsonp
        	jsonp:"jsoncallback",//回调类型 jsonp
		contentType:"application/x-www-form-urlencoded; charset=utf-8",//请求内容类型(键值对,编码格式utf-8)
		url: "/esb?gn=ts&cz=check",// 请求地址
		data: param,//请求附带参数
		timeout:20000,//请求超时时间(20秒)
		error:function(XMLHttpRequest,textStatus,errorThrown){ //请求错误捕捉
			alert("连接服务器失败,请重试!");
		},success: function(responseData){ //请求成功捕捉
			$("#modal_cxsq").modal('hide');
			InitData(cur_page);
			$("#btn_modal_ts_tj").attr("disabled",false);
		}
			
	});
后台接受数据方式:String str = request.getParameter("id");或者Object obj = request.getAttribute("id");
  • 以jsonp格式传递数据
js部分:
	var data='{"update":[{';
		data+='"id":'+id;
		data+=',"shuLiang":'+num;
		data += '}]}';
	$.ajax({
		type: "POST",//数据类型 jsonp
        	jsonp:"jsoncallback",//请求内容类型(键值对,编码格式utf-8)
		url: sjzxym+"/esb?gn="+gn+"&cz="+cz,// 请求地址
		data: {rows:param},//请求附带参数(rows)
		timeout:20000,errorThrown){ //请求错误捕捉
			//alert("连接服务器失败,请重试!");
			btn!=null&&$(btn).attr("disabled",false); //元素是否存在,是否禁用
		},success: function(responseData){ //请求成功捕捉
			callback(responseData); //回调
			btn!=null&&$(btn).attr("disabled",false); //元素是否存在,是否禁用
		}
			
	});
后台部分:
  1. 可以使用alibaba的fastjson、google的GSON、json-lib来解析json数据;以json-lib为例,导入相关jar包(
    • json-lib-2.3-jdk15.jar @H_404_29@
    • commons-beanutils-1.8.0.jar @H_404_29@
    • commons-collections-3.1.jar @H_404_29@
    • commons-lang-2.4.jar @H_404_29@
    • commons-logging-1.1.1.jar @H_404_29@
    • ezmorph-1.0.6.jar @H_404_29@
  2. 接收方式:(1)接收json对象:JsonObject obj = JsonObject.fromObject(request.getParameter("rows"));(2)接收json数组:JsonArray arr = JsonArray.fromObject(request.getParameter("rows"))



二、$.getJSON(无刷新)

  • var url = "http:127.0.0.1/pwc/esb?gn="+gn+"&cz="+cz+"&jsoncallback=?";
    $.getJSON(url,param,function(data){
    	callback(data);
    });
后台接受数据方式:String str = request.getParameter("id");或者Object obj = request.getAttribute("id"); @H_404_29@
$.ajax主要用于增删改操作,$.getJSON则应用于查询操作; @H_404_29@

猜你在找的Ajax相关文章