ajax之前台和后台数据传输

Spring中ajax数据传输

由于项目需要用ajax提交数据,而不是form提交数据。因此我需要学习ajax,这也是我在开发小组做的最后一个东西,尽管由于暑假要去东软实训,这个ajax提交也没有做完,但对于数据的在前台和后台的传递是解决了。
如何把数据通过ajax从前台传到后台,在网上查询的方法都是通过“data:”把数据传到后台,但是后台“String endTime=request.getParameter("eTime");”时间的值是空,并不能得到值,最后只有通过“url:”传值到后台,如: url : "${base}/management/loginMonitor/loginCount/getJson.htm?eTime="+eTime+"& sTime="+sTime。开始时间和结束时间就能通过request得到。
那么如何把数据通过ajax从后台传递到前台,首先数据放在map里,如:map.put("listPeople", listPeople);map.put("listTime", listTime);在controller里的方法要加上“@ResponseBody”,前台就在ajax里的success函数里获得返回的值,如:
success: function (data) { 
						 alert(data);
						 $("#listPeople",navTab.getCurrentPanel()).attr("value",data.listPeople);
						 $("#listTime",navTab.getCurrentPanel()).attr("value",data.listTime);
					}
虽然很简单,但是如何传值确实花了自己很多时间,主要对于规则还是很不清楚,当然自己还是在努力看《ajax安全手册》这本书。
前台代码:
$(".sub").click(function(){
				var eTime=$("#endTime").attr("value");
				var sTime=$("#startTime").attr("value");
				$.ajax({
					 type: "post",
					 contentType:"application/json",
					 async : false,
					 url : "${base}/management/loginMonitor/loginCount/getJson.htm?eTime="+eTime+"& sTime="+sTime,
					 success: function (data) { 
						 alert(data);
						 $("#listPeople",navTab.getCurrentPanel()).attr("value",data.listPeople);
						 $("#listTime",navTab.getCurrentPanel()).attr("value",data.listTime);
					}
				});
		 });
后台代码:
@ResponseBody
	@RequestMapping("/getJson")
	public Map<String, Object> getJson(HttpServletRequest request) throws Exception {
		//显示相应的界面
		Map<String, Object> map=loginCountService.getRefreshMap(request);
		/*Set<Map.Entry<String, Object>> allSet=map.entrySet();
	     
		 Iterator<Map.Entry<String, Object>> iter=allSet.iterator();
		 while(iter.hasNext()){
			 Map.Entry<String, Object> me=iter.next();
			 System.out.println("test"+me.getKey()+ " "+me.getValue());
		 }*/
		return map;
	}



你可能感兴趣的:(spring,Ajax)