`
NealCai
  • 浏览: 142853 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

一个简单的ajax获取json的例子

    博客分类:
  • ajax
阅读更多
//一个简单的ajax获取json的例子

前台
<div id="ruleList"></div>向div里添加一段循环输出的数据
ajax代码
	$.ajax({
            type: "POST",
            url: "ruleListAction.do?method=searchRuleList",
            //我们用text格式接收
            //dataType: "text", 
            //json格式接收数据
            dataType: "json",
            data:  "ruleId="+ruleId+"&ruleGroupId="+ruleGroupId+"&prodName="+prodName,
            success: function (jsonStr) {
                //实例2个字符串变量来拼接下拉列表
                //alert(jsonStr);
                //使用jquery解析json中的数据
                var ruleListTemp = "<table width=\"100%\"  border=\"0\" cellspacing=\"0\" cellpadding=\"0\">";
                
                 $.each(jsonStr, function (n, value) {
                	 //alert(value.ruleId);
                    ruleListTemp += ("<tr><td>" + value.ruleName);
                    ruleListTemp += ("</td></tr>"); 
                });
                 ruleListTemp += ("</table>");

                $("#ruleList").html(ruleListTemp); 
            }
		});

要注意的是data中是js方法中获取的变量来传值给后台获取,另外jsonStr要和后台传来的变量一致

后台代码
//异步查找具体规则
	public ActionForward searchRuleList(ActionMapping actionMapping,
			ActionForm actionForm, HttpServletRequest request,
			HttpServletResponse response) throws IOException {
		
		response.setCharacterEncoding("utf-8");
		
		
		String ruleId = request.getParameter("ruleId").trim();
		String ruleGroupId = request.getParameter("ruleGroupId").trim();
		String prodName = request.getParameter("prodName").trim();
		
		try{

			//根据prodName找出prodId
			Tporduction porductionByName = ruleListLogic.getPorductionByName(prodName);
			Trule rule = ruleListLogic.getRuleByProdIdAndRuleTypeCode(porductionByName.getProdId(), "1");
			
			List<TruleVersion> ruleVersionList = new ArrayList<TruleVersion>();
			ruleVersionList = ruleListLogic.getRuleVersionListByRuleIdAndGroupId(rule.getRuleId(), Integer.parseInt(ruleGroupId));	
			
			List<RuleListBean> ruleListTmp = new ArrayList<RuleListBean>();
			
			RuleListBean ruleTmp=new RuleListBean();
			
			for(int i=0;i<ruleVersionList.size();i++){
				ruleTmp.setRuleId(ruleVersionList.get(i).getComp_id().getRuleId());
				ruleTmp.setRuleNo(ruleVersionList.get(i).getComp_id().getRuleNo());
				ruleTmp.setRuleGroupId(ruleVersionList.get(i).getRuleGroupId());
				ruleTmp.setRuleName(ruleVersionList.get(i).getRuleItemName());
				ruleListTmp.add(ruleTmp);
			}
			
			//JSON
			JSONArray json = JSONArray.fromObject(ruleListTmp);
			String jsonStr = json.toString();
			
			response.getWriter().print(jsonStr);
			response.getWriter().flush();
			response.getWriter().close();
		}catch (Exception e) {
			e.printStackTrace();
		}
		return null;
	}

需要注意的是JSONArray.fromObject放入的实体类不能是回环调用的类,如果实体类中有联合主键这种也会有问题,建议使用一个dto来转换成json,把需要的字段放入,这样就不会报java.lang.reflect.InvocationTargetException这种的错误。
分享到:
评论

相关推荐

    AJAX+JQuery+JSON的综合例子

    获取JSON数据,返回Table标签的简单例子

    获取JSON数据,返回Table标签的简单例子

    获取JSON数据,返回Table标签的简单例子 AJAX+JQuery+JSON的综合例子 AJAX JQuery JSON

    jquerAjax获取json值例子

    通过asp.net jquery ...获取并解析 json //通过程序集名称读取Dll Assembly dll = Assembly.Load("项目名"); Type t = dll.GetType("项目名.AjaxQuery"); 使用时别忘记修改 前台到后台了 剩下的想怎么弄就怎么弄啦

    省市区三级联动ajax+json+jquery

    省市区三级联动ajax+json+jquery,自己写的小例子,希望大家能喜欢一下,学习一下

    ajax获取json数据使用jquery分页插件显示

    插件下载地址 http://www.jq22.com/jquery-plugins分页-2-...下载的插件用自带的数据是可以的,但是采用ajax获取的json数据的时候会报错,所以我对插件进行了修改,成功实现。这个例子希望大家看懂自己来该,照抄不了。

    PHP Ajax JavaScript Json获取天气信息实现代码

    下面给出一个简单的小例子: 复制代码 代码如下:&lt;iframe width=”420″ scrolling=”no” height=”60″ frameborder=”0″ allowtransparency=”true” src=”http://i.tianqi.com/index.php?c=code&id=12&ico

    ajax和servlet交互2013-08-01

    此例子里面讲解了ajax请求servlet之后,处理servlet的返回值,包括xml、text文本、json、html页面,例子非常容易懂,而且注释详细,对于理解ajax请求的原理非常有帮助,值得一看。

    mcDropdown无限级分类ajax请求生成下拉选项

    1.在原有的基础上进行二次修改,通过ajax请求,获取json数组,迭代json数组生成多层级的数据字典。当前例子中数据源为 模拟的json数据。当然该方法是支持无限级父子关系。修改之前的源码均来自网上,本人只是对当前...

    纯js分页(ajax获取数据)

    此工具的目的是实现网页数据分页显示完全脱离服务器,单纯使用js实现,现在功能还比较简单,只能单纯显示数据,...工具例子使用ajax获取列表数据,当然其他形式也行,最后应该把数据转换成json格式的字符串,详见例子。

    javascript解析ajax返回的xml和json格式数据实例详解

    本文实例讲述了javascript解析ajax返回的xml和json格式数据。分享给大家供大家参考,具体如下: 写个例子,以备后用 一、JavaScript 解析返回的xml格式的数据: 1、javascript版本的ajax发送请求 (1)、创建...

    Ajax基础教程(扫描版)

    这一过程将乐趣无穷,我们衷心地希望,有一天能看到你开发的基于ajax的一流应用!... 目录 译者序. 前言 致谢 关于技术审校 第1章 ajax简介 1 1.1 web应用简史 1 1.2 浏览器历史 2 1.3 web应用的发展历程 3 ...

    通过jquery的$.getJSON做一个跨域ajax请求试验

    jquery提供了$.getJSON的方法,让我们可以实现跨域ajax请求,但jqueryAPI上的内容实在太少,如何用$.getJSON,请求网站应该返回怎样的数据库才能让$.getJSON获取到,下面我就用一个实际例子来说明下。

    JsonExportExcel

    json转exce格式 不依赖于datatables等界面显示,可采用ajax技术从后台获取json数据然后下载导出为exce格式,非常简单易用!有例子

    PHP开发框架kohana中处理ajax请求的例子

    现在主流的javascript框架非jQuery莫属.jQuery对ajax请求也作了封装,这里就以jQuery为例来写个.demo是获取后台json串,并且用each处理.代码大部分是从jqapi搞来的,准确也方便. $.ajax({ url: "/test/json",//test...

    Ajax二级联动下拉列表框

    当二级联动要实现数据库时实读取时,比较麻烦,本例子用Ajax可以简单实现 ajax+Jsp+js+servlet

    jquery ajax TreeView asp.net改进版

    --你可以把下面的代码放到一个js文件当中--&gt; var checknodes = "HJH8,HJA5"; //你事先要传给树控件的 已选中节点 id $(document).ready(function() { var o = { isAsync: false, //是否异步获取节点,根据咱...

    JAVA上百实例源码以及开源项目

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    asp.net_echarts后台动态获取数据

    自己练手写的几个例子: demo1和demo2是echart两种不同的写法,数据是写死的,仅供参考... demo3、demo4、demo5是ajax动态从后台获取json数据的例子。 demo3是折线图和柱状图。 demo4是饼图。 demo5是双折线(柱状)图。

    你不需要jQuery(三) 新AJAX方法fetch()

    XMLHttpRequest来完成ajax有些老而过时了。 fetch()能让我们完成类似 XMLHttpRequest (XHR) 提供的ajax功能。它们之间的主要区别是,Fetch API 使用了 Promises,它让...我们要请求一个URL,获取JSON格式的返回结果。

    jQuery Autocomplete例子,自动补全功能

    jQuery UI Autocomplete是jQuery UI的自动完成组件,通过ajax请求的JSON数组、JSONP来获取数据,实现自动补全功能

Global site tag (gtag.js) - Google Analytics