Jquery解析json字符串及json数组的方法


Posted in Javascript onMay 29, 2015

本文实例讲述了Jquery解析json字符串及json数组的方法。分享给大家供大家参考。具体如下:

<!doctype html> 
<html> 
<head> 
<meta charset="utf-8"> 
<script src="js/jquery-1.6.2.min.js"></script> 
</head> 
<body> 
<hr /> 
<h3>解析json字符串、json数组</h3> 
<input type="button" id="jsonBtn" name="jsonBtn" value="jsonArray" /> 
<input type="button" id="jsonArray2" name="jsonArray2" value="jsonArray2" /> 
<input type="button" id="jsonStr" name="jsonStr" value="jsonStr" /> 
<input type="button" id="jsonStr2" name="jsonStr2" value="jsonStr2" /> 
<hr /> 
<div class="jsonText"> 
 {"ret": 0, "msg": "", "is_lost":0, "nickname": "小米", "gender": "男", "province": "广东", "city": "广州", "year": "1990", "figureurl": "http:\/\/qzapp.qlogo.cn\/qzapp\/101152201\/D87BF108B19279F31587CE96E5648A98\/30", "figureurl_1": "http:\/\/qzapp.qlogo.cn\/qzapp\/101152201\/D87BF108B19279F31587CE96E5648A98\/50", "figureurl_2": "http:\/\/qzapp.qlogo.cn\/qzapp\/101152201\/D87BF108B19279F31587CE96E5648A98\/100", "figureurl_qq_1": "http:\/\/q.qlogo.cn\/qqapp\/101152201\/D87BF108B19279F31587CE96E5648A98\/40", "figureurl_qq_2": "http:\/\/q.qlogo.cn\/qqapp\/101152201\/D87BF108B19279F31587CE96E5648A98\/100", "is_yellow_vip": "0", "vip": "0", "yellow_vip_level": "0", "level": "0", "is_yellow_year_vip": "0"} 
</div> 
<hr /> 
<div class="jsonArray"> 
 { root: 
  [ 
  {name:'1',value:'0'}, 
  {name:'6101',value:'西安市'}, 
  {name:'6102',value:'铜川市'}, 
  {name:'6103',value:'宝鸡市'}, 
  {name:'6104',value:'咸阳市'}, 
  {name:'6105',value:'渭南市'}, 
  {name:'6106',value:'延安市'}, 
  {name:'6107',value:'汉中市'}, 
  {name:'6108',value:'榆林市'}, 
  {name:'6109',value:'安康市'}, 
  {name:'6110',value:'商洛市'} 
  ], 
 json: 
  [ 
  {name:'6103',value:'宝鸡市'}, 
  {name:'6104',value:'咸阳市'}, 
  {name:'6107',value:'汉中市'}, 
  {name:'6108',value:'榆林市'}, 
  {name:'6110',value:'商洛市'} 
  ] 
 } 
</div> 
<hr /> 
<div class="jsonArray2"> 
 [ 
 {name:'1',value:'0'}, 
 {name:'6101',value:'西安市'}, 
 {name:'6102',value:'铜川市'}, 
 {name:'6103',value:'宝鸡市'}, 
 {name:'6104',value:'咸阳市'}, 
 {name:'6105',value:'渭南市'}, 
 {name:'6106',value:'延安市'}, 
 {name:'6107',value:'汉中市'}, 
 {name:'6108',value:'榆林市'}, 
 {name:'6109',value:'安康市'}, 
 {name:'6110',value:'商洛市'} 
 ] 
</div> 
</body> 
</html> 
<script type="text/javascript"> 
 ///jQuery 解析json字符串 
 //解析复杂的json数组 
 $("#jsonBtn").click(function(){ 
 var data=$(".jsonArray").html(); 
 alert("-----"+data); 
 var dataObj=eval("("+data+")");//转换为json对象 
 alert(dataObj.root.length);//输出root的子对象数量 
 alert(dataObj.json.length);//输出json的子对象数量 
  //遍历json数组 
  $.each(dataObj.root, function(i, item) { 
  alert(item.name+"-----root-------"+item.value); 
  }); 
  //遍历json数组 
  $.each(dataObj.json, function(i, item) { 
  alert(item.name+"-----json-------"+item.value); 
  }); 
 }); 
 //解析单个的json数组 
 $("#jsonArray2").click(function(){ 
 var data=$(".jsonArray2").html(); 
 alert("-----"+data); 
 var dataObj=eval("("+data+")");//转换为json对象 
 alert(dataObj.length);//输出root的子对象数量 
  //遍历json数组 
  $.each(dataObj, function(i, item) { 
  alert(item.name+"-----jsonArray-------"+item.value); 
  }); 
 }); 
 ///解析标准的Json串 方法一 
 $("#jsonStr").click(function(){ 
 var json=$(".jsonText").html(); 
 alert("---2--"+json); 
  var item = jQuery.parseJSON(json); 
  alert(item.nickname); 
  alert(item.ret); 
  alert(item.figureurl ); 
 }); 
 ///解析标准的Json串,方法二 
 $("#jsonStr2").click(function(){ 
 var json=$(".jsonText").html(); 
 alert("---2--"+json); 
  var obj = eval("("+json+")"); 
  alert(obj.nickname); 
  alert(obj.ret); 
  alert(obj.figureurl ); 
 }); 
</script>

希望本文所述对大家的jQuery程序设计有所帮助。

Javascript 相关文章推荐
一个JavaScript继承的实现
Oct 24 Javascript
js获取网页高度(详细整理)
Dec 28 Javascript
jquery插件jquery倒计时插件分享
Dec 27 Javascript
Jquery对数组的操作技巧整理
Mar 25 Javascript
浅析Node.js中使用依赖注入的相关问题及解决方法
Jun 24 Javascript
基于jquery实现图片相关操作(重绘、获取尺寸、调整大小、缩放)
Dec 25 Javascript
js数字滑动时钟的简单实现(示例讲解)
Aug 14 Javascript
js实现鼠标跟随运动效果
Aug 02 Javascript
基于better-scroll 实现歌词联动功能的代码
May 07 Javascript
keep-Alive搭配vue-router实现缓存页面效果的示例代码
Jun 24 Javascript
vue基于Teleport实现Modal组件
May 31 Vue.js
利用uni-app生成微信小程序的踩坑记录
Apr 05 Javascript
js实现时间显示几天前、几小时前或者几分钟前的方法集锦
May 29 #Javascript
jQuery实现返回顶部效果的方法
May 29 #Javascript
jquery读取xml文件实现省市县三级联动的方法
May 29 #Javascript
Jquery动态添加输入框的方法
May 29 #Javascript
jquery任意位置浮动固定层插件用法实例
May 29 #Javascript
JQuery控制Radio选中方法分析
May 29 #Javascript
究竟什么是Node.js?Node.js有什么好处?
May 29 #Javascript
You might like
php中常用编辑器推荐
2007/01/02 PHP
Apache 配置详解(最好的APACHE配置教程)
2010/07/04 PHP
php截取后台登陆密码的代码
2012/05/05 PHP
PHP 修复未正常关闭的HTML标签实现代码(支持嵌套和就近闭合)
2012/06/07 PHP
php生成图形验证码几种方法小结
2013/08/15 PHP
PHP zip扩展Linux下安装过程分享
2014/05/05 PHP
php自动更新版权信息显示的方法
2015/06/19 PHP
详解PHP的Yii框架中组件行为的属性注入和方法注入
2016/03/18 PHP
浅谈php中变量的数据类型判断函数
2017/03/04 PHP
删除PHP数组中的重复元素的实现代码
2017/04/10 PHP
PHP实现简单的模板引擎功能示例
2017/09/02 PHP
PHP实现的mysql操作类【MySQL与MySQLi方式】
2017/10/07 PHP
日期 时间js控件
2009/05/07 Javascript
Javascript 两个窗体之间传值实现代码
2009/09/25 Javascript
jQuery hover 延时器实现代码
2011/03/12 Javascript
JavaScript基础篇(6)之函数表达式闭包
2015/12/11 Javascript
JavaScript中的原始值和复杂值
2016/01/07 Javascript
AngularJS数据源的多种获取方式汇总
2016/02/02 Javascript
浅谈jQuery before和insertBefore的区别
2016/12/04 Javascript
Vue.js实战之利用vue-router实现跳转页面
2017/04/01 Javascript
简单谈谈require模块化jquery和angular的问题
2017/06/23 jQuery
express启用https使用小记
2019/05/21 Javascript
JavaScript switch语句使用方法简介
2019/12/30 Javascript
微信小程序实现列表的横向滑动方式
2020/07/15 Javascript
Python中使用Queue和Condition进行线程同步的方法
2016/01/19 Python
Python金融数据可视化汇总
2017/11/17 Python
Python爬虫的两套解析方法和四种爬虫实现过程
2018/07/20 Python
CSS3 box-shadow属性实例详解
2020/06/19 HTML / CSS
美国木工工具和用品商店:Woodcraft
2019/10/30 全球购物
团队队名口号大全
2014/06/06 职场文书
图书馆标语
2014/06/19 职场文书
考试保密承诺书
2014/08/30 职场文书
餐厅服务员岗位职责
2015/02/09 职场文书
小学英语听课心得体会
2016/01/14 职场文书
用python删除文件夹中的重复图片(图片去重)
2021/05/12 Python
Windows Server 2022 超融合部署(图文教程)
2022/06/25 Servers