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基于jQuery的表格悬停变色/恢复,表格点击变色/恢复,点击行选Checkbox
Aug 05 Javascript
jquery 模式对话框终极版实现代码
Sep 28 Javascript
JavaScript 高级篇之函数 (四)
Apr 07 Javascript
jQuery实现鼠标可拖动调整表格列宽度
May 26 Javascript
js中document.write的那点事
Dec 12 Javascript
利用Angularjs和原生JS分别实现动态效果的输入框
Sep 01 Javascript
详解React-Todos入门例子
Nov 08 Javascript
Ajax的概述与实现过程
Nov 18 Javascript
JavaScript的变量声明提升问题浅析(Hoisting)
Nov 30 Javascript
vuejs使用递归组件实现树形目录的方法
Sep 30 Javascript
Elementui表格组件+sortablejs实现行拖拽排序的示例代码
Aug 28 Javascript
vue控制多行文字展开收起的实现示例
Oct 11 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判断变量类型常用方法
2012/04/24 PHP
Codeigniter(CI)框架分页函数及相关知识
2014/11/03 PHP
一款简单实用的php操作mysql数据库类
2014/12/08 PHP
PHP filesize函数用法浅析
2019/02/15 PHP
PHP实现网站应用微信登录功能详解
2019/04/11 PHP
利用PHP计算有多少小于当前数字的数字方法示例
2020/08/26 PHP
JavaScript 闭包在封装函数时的简单分析
2009/11/28 Javascript
jQuery技巧总结
2011/01/01 Javascript
jQuery基础知识点总结(DOM操作)
2016/06/01 Javascript
BootStrap selectpicker
2016/06/20 Javascript
JS使用onerror捕获异常示例
2016/08/03 Javascript
完美解决jQuery符号$与其他javascript 库、框架冲突的问题
2016/08/09 Javascript
详解Nodejs基于mongoose模块的增删改查的操作
2016/12/21 NodeJs
jQuery层级选择器实例代码
2017/02/06 Javascript
nodejs后台集成ueditor富文本编辑器的实例
2017/07/11 NodeJs
react.js使用webpack搭配环境的入门教程
2017/08/14 Javascript
javascript 通过键名获取键盘的keyCode方法
2017/12/31 Javascript
图片懒加载imgLazyLoading.js使用详解
2020/09/15 Javascript
详解Angular中通过$location获取地址栏的参数
2018/08/02 Javascript
微信小程序用户登录和登录态维护的实现
2020/12/10 Javascript
[40:03]Liquid vs Optic 2018国际邀请赛淘汰赛BO3 第一场 8.21
2018/08/22 DOTA
python二分法实现实例
2013/11/21 Python
使用相同的Apache实例来运行Django和Media文件
2015/07/22 Python
Python利用IPython提高开发效率
2016/08/10 Python
fastcgi文件读取漏洞之python扫描脚本
2017/04/23 Python
python 编写简单网页服务器的实例
2018/06/01 Python
对Django中内置的User模型实例详解
2019/08/16 Python
python GUI库图形界面开发之PyQt5窗口控件QWidget详细使用方法
2020/02/26 Python
boostrap modal 闪现问题的解决方法
2020/09/01 HTML / CSS
柒牌官方商城:中国男装优秀品牌
2017/06/30 全球购物
图库照片、免版税图片、矢量艺术、视频片段:Depositphotos
2019/08/02 全球购物
毕业生的求职信范文分享
2013/12/04 职场文书
晚会邀请函范文
2014/01/24 职场文书
债务纠纷起诉书
2015/05/20 职场文书
Python爬虫框架之Scrapy中Spider的用法
2021/06/28 Python
nginx作grpc的反向代理踩坑总结
2021/07/07 Servers