1. 程式人生 > >通過Ajax進行Post提交Json資料

通過Ajax進行Post提交Json資料

js程式碼
$.ajax({
			type : "POST",
			url : js_path + "/maintainAdd/add",
			data : JSON.stringify(madd_data.editMaintain),
			contentType : "application/json",
			dataType : "json",
            complete:function(msg) {
                layer.msg("報修成功",{time:2000});
                layer.close(madd_data.w_c_index);
			}
		});
Action程式碼
@ResponseBody
	@RequestMapping(value = "/add",method = RequestMethod.POST)
	public void addMaintain(@RequestBody Maintain  maintain){
		this.save_maintain(maintain);
	}
注意事項: 1、ajax中,contentType: "application/json"是必須的。dataType: "json"是表示返回值是json格式,依據返回值型別而定。 2、data中,將json物件序列化。使用JSON.stringfy()函式或者雙引號形式的字串。 3、除錯的一個技巧,有時候json變數和實體類相對複雜時提交老是報415或者400的錯誤又找不到原因,可以將Action中的實體類換成JSONObject 看看能不能接收到引數,@RequestBody JSONObject requestJso,接收後在JSON系列化到實體類。有次就是因為json變數向實體類轉換時發生字元向數字轉換的錯誤。