jquery遍历json对象集合详解
来源: 阅读:1310 次 日期:2016-06-27 13:50:55
温馨提示: 小编为您整理了“jquery遍历json对象集合详解”,方便广大网友查阅!

这篇文章主要为大家详细介绍了jquery遍历json对象集合、jQuery 遍历JSON对象、jquery中遍历读取json串中的对象三种情况,感兴趣的小伙伴们可以参考一下

第一个案例:jquery 遍历json对象集合 常用示例

jsp中

$.ajax({

        url: "${applicationScope.rootpath}common/getContractPage.html?userConId=${userConId}",

        type: "post",

        dataType:"json",

        data: {},

        success: function (jsonText) {

          if(jsonText){

            var status = jsonText.status;

            var msg = jsonText.msg;

            if(status == '500'){

              //有异常的信息时

            alert(msg);

            }else{

              $.each(jsonText,function(i,item){

                var pngPath = item[0];

                var pngName = item[1];

            });

            }

          }

        }

      });

jsonText的格式:

{"status":"200","msg":[{"id":"1","name":"n1"},{"id":"2","name":"n2"}]}

{"status":"500","msg":"异常信息"}

java中: 

List pngFileList = new ArrayList();//某对象集合

if(null != pngFileList && pngFileList.size() > 0) {

JSONArray pngFileArray =JSONArray.fromObject(pngFileList);

}

if(null != pngFileArray){

this.setTextAjax(pngFileArray.toString());

//异常的格式

//this.setTextAjax("{\"status\":\"500\",\"msg\":\""+errormsg+"\"}");//没有记录

/**

* ajax返回html,包括json形式

* @param responseContent

*/

public void setTextAjax(String responseContent) {

try {

HttpServletResponse response = getHttpResponse();

response.setContentType("text/html");

response.setCharacterEncoding("UTF-8");

response.setHeader("Pragma", "No-cache");

response.setHeader("Content-Type", "text/html");

response.setHeader("Cache-Control", "no-cache");

response.setDateHeader("Expires", 0);

PrintWriter out = response.getWriter();

out.print(responseContent);

out.flush();

out.close();

} catch (IOException e) {

e.printStackTrace();

}

// ajaxResponse = new StringBufferInputStream(responseContent);

}

第二个案例:jQuery 遍历JSON 对象

不说别的,直接贴代码:

<script src="js/jquery-1.6.4.js" type="text/javascript"></script>

<script type="text/javascript">

  $(document).ready(function() {

    $("#Link").click(function() {

    var objson = "[{Title:'Sjr',Content:'Library',summary:'summary'},{Title:'Sjr',Content:'Library',summary:[{sum0:'sum0'},{sum0:'sum1'},{sum0:'sum2'}]},{Title:'Sjr',Content:'Library',summary:[{sum0:'sum0'},{sum0:'sum1'},{sum0:'sum2'}]}]";

      var obj = eval(objson);

      $(obj).each(function(index) {

        var val = obj[index];

        if (typeof (val.summary) == "object") {

          $(val.summary).each(function(ind) {

            alert(val.Title + " " + val.Content + " " + val.summary[ind].sum0);

          });

        } else {

          alert(val.Title + " " + val.Content + " " + val.summary);

        }

      });

    });

  });

</script>

第三个案例:jquery中遍历读取json串中的对象

假设我们从服务器端获取如下的json串,其中包括数组。我们该如何遍历读取呢?

复制代码 代码如下:

{"result":null,"rows":[{"caishen":"东","fushen":"西北","huajiazi":"甲子","id":1,"nayin":"大海水","shengmen":"南","simen":"北","wugui":"西","xishen":"东南","yanggui":"西南","yingui":"东北"},{"caishen":"东北","fushen":"北","huajiazi":"乙丑","id":2,"nayin":"大林木","shengmen":"西北","simen":"西南","wugui":"东南","xishen":"东","yanggui":"西","yingui":"南"},{"caishen":"西","fushen":"东","huajiazi":"丙寅","id":3,"nayin":"石榴木","shengmen":"北","simen":"西北","wugui":"南","xishen":"东南","yanggui":"东北","yingui":"西南"}],"total":3} 

使用.each难度太高,直接js读取吧

//通过url获取json对象     

     $.post("json/godjson!godlist", function (data){ 

//data.rows返回的是json字符串。需要转换成json对象 

       var json = eval(data.rows) 

//json变量现在就是一个数组对象,直接读取每个数组对象。结合属性进行输出 

       for(var i=0; i<json.length; i++){ 

        alert(json[i].caishen+"--------- " + json[i].xishen); 

       } 

//记得返回的数据类型一定要是json类型 

    }, "json"); 

通过如上的方式就能获取json串的json对象并进行输出。

为大家分享这么多的案例,就是想帮助大家掌握jquery遍历json对象集合的方法,真正理解,希望这篇文章可以帮助到大家。

更多信息请查看网络编程
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!

2025国考·省考课程试听报名

  • 报班类型
  • 姓名
  • 手机号
  • 验证码
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map