欢迎来到新闻!
我的订单 签到有礼 资讯中心
当前位置:首页 > 代码知识 >
代码知识

【编程】jQuery中调用JSON和XML数据--jQuery基础知识点(6)

发布日期:2019-12-13 11:39 浏览量:0

  1. JSON的结构包含两种:一种是name/value形式,另一种为数组格式。

var Obj = {"name":"ligang","age":24,"sex":"male"};
var strObj = {"member":[
{grade:"一年级",students:{name:["李刚","ligang"]}},
{grade:"二年级",students:{name:["lg","leegang"]}}
]};
//获取对象属性值
var obj = strObj.member;
$.each(obj,function(index){
console.log(obj[index].students.name[1]); //ligang leegang
//console.log(obj[index].students[0].name[1]);  //错误
})

  2. 将字符串转成JSON对象

var strInfo = "{'name':'ligang','age':24,'sex':'male'}";   //strInfo.name ==> undefined
var objInfo = eval('('+strInfo+')'); //objInfo.name ==> "ligang"

  3. 完整地解析一个XML格式的数据,有两种方式:一种方式是通过DOM文档模型进行解析,另一种方式是遍历各个标签的节点。 4. 与传统的JavaScript调用XML相比,使用jQuery解析方便的多,其先使用$.ajax()方法请求并打开指定的XML文件,然后,在回调函数中获取返回的XML文件数据对象,使用find()、children()、text()方法获取各个标签下的元素并读取元素的值。

var arrGrade = new Array(980886, 980666);
var strHTML = ""; //初始化保存内容变量
$.ajax({
   url: 'Xml/7-6.xml?',
   dataType: 'xml',
   success: function(data) {
       $.each(arrGrade, function(i) {
           var $strUser = $(data).find("User[grade=" + arrGrade[i] + "]");
           strHTML += "<h3>年级:" + arrGrade[i] + "</h3>";
           $strUser.each(function() {
               strHTML += "姓名:" + $(this).children("name").text() + "<br>";
               strHTML += "性别:" + $(this).children("sex").text() + "<br>";
               strHTML += "邮箱:" + $(this).children("email").text() + "<hr>";
           });
       });
       $("#Tip").html(strHTML); //显示处理后的数据
   }
});
<?xml version="1.0" encoding="utf-8" ?>
<Info>
 <User grade="980886">
   <name>ligang</name>
   <sex>男</sex>
   <email>ligang@163.com</email>
 </User>
 <User grade="980886">
   <name>leegang</name>
   <sex>男</sex>
   <email>leegang@163.com</email>
 </User>
 <User grade="980666">
   <name>lg</name>
   <sex>男</sex>
   <email>lg@163.com</email>
 </User>
</Info>