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 相关文章推荐
JS date对象的减法处理实现代码
Dec 28 Javascript
JAVASCRIPT车架号识别/验证函数代码 汽车车架号验证程序
Jan 08 Javascript
JavaScript1.6数组新特性介绍以及JQuery的几个工具方法
Dec 06 Javascript
IE6浏览器中window.location.href无效的解决方法
Nov 20 Javascript
jQuery中:disabled选择器用法实例
Jan 04 Javascript
jQuery增加、删除及修改select option的方法
Aug 19 Javascript
Ajax使用原生态JS验证用户名是否存在
May 26 Javascript
微信开发 JS-SDK 6.0.2 经常遇到问题总结
Dec 08 Javascript
MUI顶部选项卡的用法(tab-top-webview-main)详解
Oct 08 Javascript
Angular4学习笔记router的简单使用
Mar 30 Javascript
Vue-cli@3.0 插件系统简析
Sep 05 Javascript
javascript条件式访问属性和箭头函数介绍
Nov 17 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中SESSION的注销与清除
2015/04/16 PHP
php 根据自增id创建唯一编号类
2017/04/06 PHP
JS 巧妙获取剪贴板数据 Excel数据的粘贴
2009/07/09 Javascript
JS打开新窗口的2种方式
2013/04/18 Javascript
解析js原生方法创建表格效率测试
2013/07/08 Javascript
JavaScript获取FCK编辑器信息的具体方法
2013/07/12 Javascript
Nodejs初级阶段之express
2015/11/23 NodeJs
Angular和百度地图的结合实例代码
2016/10/19 Javascript
Jquery实时监听input value的实例
2017/01/26 Javascript
详谈jQuery Ajax(load,post,get,ajax)的用法
2017/03/02 Javascript
Angular4实现动态添加删除表单输入框功能
2017/08/11 Javascript
详解react服务端渲染(同构)的方法
2017/09/21 Javascript
node中modules.exports与exports导出的区别
2018/06/08 Javascript
Javascript实现秒表倒计时功能
2018/11/17 Javascript
详解async/await 异步应用的常用场景
2019/05/13 Javascript
webpack+vue.js构建前端工程化的详细教程
2020/05/10 Javascript
[00:47]DOTA2荣耀之路6:天火,天火!
2018/05/30 DOTA
Python实现求最大公约数及判断素数的方法
2015/05/26 Python
Python+django实现文件下载
2016/01/17 Python
Python实现求笛卡尔乘积的方法
2017/09/16 Python
python实现归并排序算法
2018/11/22 Python
Numpy一维线性插值函数的用法
2020/04/22 Python
Python定时从Mysql提取数据存入Redis的实现
2020/05/03 Python
python pyecharts 实现一个文件绘制多张图
2020/05/13 Python
完美解决Django2.0中models下的ForeignKey()问题
2020/05/19 Python
Python3 pywin32模块安装的详细步骤
2020/05/26 Python
Django 实现 Websocket 广播、点对点发送消息的代码
2020/06/03 Python
html5 canvas简单封装一个echarts实现不了的饼图
2018/06/12 HTML / CSS
HTML5 层的叠加的实现
2020/07/07 HTML / CSS
AmazeUI 评论列表的实现示例
2020/08/13 HTML / CSS
总裁秘书岗位职责
2013/12/04 职场文书
如何编写优秀的食品项目创业计划书
2014/01/23 职场文书
实习协议书范本
2014/09/25 职场文书
迟到检讨书
2015/01/26 职场文书
关于拾金不昧的感谢信(五篇)
2019/10/18 职场文书
linux下安装redis图文详细步骤
2021/12/04 Redis