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 相关文章推荐
学习YUI.Ext第五日--做拖放Darg&amp;Drop
Mar 10 Javascript
鼠标滚轴控制文本框值的JS代码
Nov 19 Javascript
createTextRange()的使用示例含文本框选中部分文字内容
Feb 24 Javascript
js检测浏览器版本、核心、是否移动端示例
Apr 24 Javascript
JavaScript动态创建link标签到head里的方法
Dec 22 Javascript
javascript实现控制浏览器全屏
Mar 30 Javascript
jQuery实现可关闭固定于底(顶)部的工具条菜单效果
Nov 06 Javascript
JavaScript严格模式详解
Nov 18 Javascript
JS异步文件上传(兼容IE8+)
Apr 02 Javascript
JS中定位 position 的使用实例代码
Aug 06 Javascript
js实现通过开始结束控制的计时器
Feb 25 Javascript
vue项目中引入vue-datepicker插件的详解
May 14 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安装攻略:常见问题解答(一)
2006/10/09 PHP
浅谈使用 PHP 进行手机 APP 开发(API 接口开发)
2014/08/11 PHP
smarty模板引擎基础知识入门
2015/03/30 PHP
表单提交错误后返回内容消失问题的解决方法(PHP网站)
2015/10/20 PHP
PHP CURL或file_get_contents获取网页标题的代码及两者效率的稳定性问题
2015/11/30 PHP
CI操作cookie的方法分析(基于helper类库)
2016/03/28 PHP
php使用Jpgraph创建3D饼形图效果示例
2017/02/15 PHP
laravel 实现关闭CSRF(全部关闭、部分关闭)
2019/10/21 PHP
JavaScript Date对象 日期获取函数
2010/12/19 Javascript
js动态创建表格,删除行列的小例子
2013/07/20 Javascript
一个简单的Node.js异步操作管理器分享
2014/04/29 Javascript
JS动态创建DOM元素的方法
2015/06/09 Javascript
JS组件Bootstrap Select2使用方法详解
2020/04/17 Javascript
JS实现DIV高度自适应窗口示例
2017/02/16 Javascript
javaScript和jQuery自动加载简单代码实现方法
2017/11/24 jQuery
JS实现的ajax和同源策略(实例讲解)
2017/12/01 Javascript
基于Vuejs的搜索匹配功能实现方法
2018/03/03 Javascript
在Vue项目中引入腾讯验证码服务的教程
2018/04/03 Javascript
jQuery实现的自定义轮播图功能详解
2018/12/28 jQuery
原生js实现抽奖小游戏
2019/06/27 Javascript
[43:03]LGD vs Newbee 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/19 DOTA
[54:26]完美世界DOTA2联赛PWL S3 Forest vs Rebirth 第一场 12.10
2020/12/12 DOTA
Python中http请求方法库汇总
2016/01/06 Python
浅谈五大Python Web框架
2017/03/20 Python
python安装numpy&amp;安装matplotlib&amp; scipy的教程
2017/11/02 Python
python判断文件夹内是否存在指定后缀文件的实例
2019/06/10 Python
Python numpy.zero() 初始化矩阵实例
2019/11/27 Python
python 带时区的日期格式化操作
2020/10/23 Python
Python numpy大矩阵运算内存不足如何解决
2020/11/19 Python
python上下文管理的使用场景实例讲解
2021/03/03 Python
css3中背景尺寸background-size详解
2014/09/02 HTML / CSS
adidas爱尔兰官方网站:阿迪达斯运动鞋和运动服
2019/11/01 全球购物
员工离职通知函
2015/04/25 职场文书
运动会通讯稿600字
2015/07/20 职场文书
图文详解nginx日志切割的实现
2022/01/18 Servers
Beekeeper Studio开源数据库管理工具比Navicat更炫酷
2022/06/21 数据库