JQuery 的 AJax 解说和返回页面Json数据

$.ajax({
		   type: "POST",
		    dataType: "json",
		    url: "updateStatus.action",
		    data: "ID="+id+"&status="+status+"",
		    success: function(data){
		    
			   }
	  });

     上面是一个简单的Jquery的Ajax的例子:我们用Ajax主要是用于页面的局部刷新,当返回值是Json数据时会好操作,要返回值是Json有两种方法。

  1. 在Strut 的配置文件中配置返回值类型:
<package name="xjfcThirdEdition" extends="json-default">
		<action name="luckStakeAction" class="com.xingkongyongheng.web.action.stake.StakeSsq"
			method="singleStakeSsq">
			<result type="json"></result>
		</action>
</package>

2.在action中直接返回json 的数据类型的字符串:

      1.)如果是一个对象或者几个值:

        

HttpServletResponse response=ServletActionContext.getResponse();
        response.setCharacterEncoding("UTF-8");
        response.setContentType("text/plain");
        PrintWriter out;
        String ret="{\"type\":\""+type+"\",\"msg\":"+msg+"}";
        try{
            out=response.getWriter();
            out.print(ret);
            out.flush();
        }catch(IOException e){
        	log.error(e.getMessage(),e.fillInStackTrace());
        }

       2.)返回一个对象的List:

String msg = JSONArray.fromObject(list).toString();
HttpServletResponse response=ServletActionContext.getResponse();
        response.setCharacterEncoding("UTF-8");
        response.setContentType("text/plain");
        PrintWriter out;
        try{
        	out=response.getWriter();
            out.print("{\"msg\":"+msg+"}");
out.flush();
        }catch(IOException e){
        	log.error(e.getMessage(),e.fillInStackTrace());
        }

      这个的思路就是先把list通过Gson架包的方法转换成json字符串,返回到页面

相关推荐