jquery遍历json对象集合详解


Posted in Javascript onMay 18, 2016

本文实例采用案例分析的方法介绍了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对象集合的方法,真正理解,希望这篇文章可以帮助到大家。

Javascript 相关文章推荐
JavaScript学习笔记(一) js基本语法
Oct 25 Javascript
使用javascript获取页面名称
Dec 23 Javascript
深入分析jQuery的ready函数是如何工作的(工作原理)
Dec 17 Javascript
AngularJS中处理多个promise的方式
Feb 02 Javascript
解析浏览器端的AJAX缓存机制
Jun 21 Javascript
react-redux中connect()方法详细解析
May 27 Javascript
微信小程序学习之数据处理详解
Jul 05 Javascript
vue里面v-bind和Props 利用props绑定动态数据的方法
Aug 27 Javascript
详解JS中统计函数执行次数与执行时间
Sep 04 Javascript
微信小程序-form表单提交代码实例
Apr 29 Javascript
Javascript三种字符串连接方式及性能比较
May 28 Javascript
利用layer实现表单完美验证的方法
Sep 26 Javascript
深入理解JavaScript中的对象复制(Object Clone)
May 18 #Javascript
js验证框架实现代码分享
May 18 #Javascript
在JavaScript中对HTML进行反转义详解
May 18 #Javascript
深入理解JavaScript中的浮点数
May 18 #Javascript
Node.js返回JSONP详解
May 18 #Javascript
noty ? jQuery通知插件全面解析
May 18 #Javascript
Avalon中文长字符截取、关键字符隐藏、自定义过滤器
May 18 #Javascript
You might like
TMDPHP 模板引擎使用教程
2012/03/13 PHP
用来解析.htpasswd文件的PHP类
2012/09/05 PHP
PHP实现的购物车类实例
2015/06/17 PHP
php常用字符函数实例小结
2016/12/29 PHP
PHP操作MySQL中BLOB字段的方法示例【存储文本与图片】
2017/09/15 PHP
纯js网页画板(Graphics)类简介及实现代码
2012/12/24 Javascript
兼容ie、firefox的图片自动缩放的css跟js代码分享
2013/08/12 Javascript
jquery用offset()方法获得元素的xy坐标
2014/09/06 Javascript
JavaScript获取DOM元素的11种方法总结
2015/04/25 Javascript
深入学习jQuery Validate表单验证
2016/01/18 Javascript
使用开源工具制作网页验证码的方法
2016/10/17 Javascript
node.js中EJS 模板快速入门教程
2017/05/08 Javascript
weui框架实现上传、预览和删除图片功能代码
2017/08/24 Javascript
微信小程序MUI导航栏透明渐变功能示例(通过改变opacity实现)
2019/01/24 Javascript
在Uni中使用Vue的EventBus总线机制操作
2020/07/31 Javascript
openlayers4.6.5实现距离量测和面积量测
2020/09/25 Javascript
使用Python压缩和解压缩zip文件的教程
2015/05/06 Python
python中的lambda表达式用法详解
2016/06/22 Python
python统计多维数组的行数和列数实例
2018/06/23 Python
python_opencv用线段画封闭矩形的实例
2018/12/05 Python
如何运行.ipynb文件的图文讲解
2019/06/27 Python
keras的load_model实现加载含有参数的自定义模型
2020/06/22 Python
python 实现网易邮箱邮件阅读和删除的辅助小脚本
2021/03/01 Python
俄罗斯最大的香水和化妆品网上商店:Randewoo
2020/11/05 全球购物
Linux操作面试题
2012/05/16 面试题
煤矿班组长的职责
2013/12/25 职场文书
写演讲稿所需要注意的4个条件
2014/01/09 职场文书
后勤主管岗位职责
2014/03/01 职场文书
好习惯伴我成长演讲稿
2014/05/21 职场文书
2014年国庆节演讲稿
2014/09/02 职场文书
群众路线教育实践活动批评与自我批评
2014/09/15 职场文书
小学教师求职信范文
2015/03/20 职场文书
幼儿园感恩节活动总结
2015/03/24 职场文书
义诊活动通知
2015/04/24 职场文书
Nginx访问日志及错误日志参数说明
2021/03/31 Servers
OpenStack虚拟机快照和增量备份实现方法
2022/04/04 Servers