麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 語言 > JavaScript > 正文

在jQuery中處理XML數據的大致方法

2024-05-06 16:24:27
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了在jQuery中處理XML數據的大致方法,jQuery是當下人氣最高的JavaScript庫,需要的朋友可以參考下

XML 全稱為 可擴展標記語言,其文件結構與 HTML 類似,但是區別也很明顯,HTML 只能使用已經定義的標簽,如 title, body, span 等,標簽種類是有限的,但是 XML 除了可以使用 HTML 的所有標簽,還可以自己隨意定制標簽,如 person, name, sex, age 等,而且 XML 中的標簽屬性名稱,也可以隨意定制。另外二者用途方面也有明顯區別,HTML 主要用來展示數據,XML 則側重于數據的存儲和傳輸。例如下面這個簡單的 XML 文檔用以存儲員工信息:

 

 
  1. <員工> 
  2. <姓名>麻花疼</姓名> 
  3. <性別>男</性別> 
  4. <年齡>40</年齡> 
  5. <職位>疼遜CEO</職位> 
  6. </員工> 

下面本文簡單介紹如何使用 jQuery 載入一個 XML 文件并從中獲取自己想要的數據。

準備 XML 文檔及測試數據

假設我們現在要構建一個包含人員信息的 XML 文檔,該 XML 文檔要能反映其姓名、所在公司、公司簡介、公司產品簡介幾個信息,那么我們可以把 XML 設計成如下樣式:

 

 
  1. <?xml version="1.0" encoding="utf-8" ?> 
  2. <Persons> 
  3. <Person FullName="Bill Gates"
  4. <Corporation>Microsoft</Corporation> 
  5. <Description>The largest software company</Description> 
  6. <Products>Windows series OS, SQL Server Database, XBox 360...</Products> 
  7. </Person> 
  8.  
  9. <Person FullName="Jobs"
  10. <Corporation>Apple</Corporation> 
  11. <Description>The famous software company</Description> 
  12. <Products>Macintosh, iPhone, iPod, iPad...</Products> 
  13. </Person> 
  14.  
  15. <Person FullName="Larry Page"
  16. <Corporation>Google</Corporation> 
  17. <Description>the largest search engine</Description> 
  18. <Products>Google search, Google Adsense, Gmail...</Products> 
  19. </Person> 
  20. </Persons> 

簡單分析一下這個 XML 文件,其中第一行 是聲明此文檔為 XML 文檔,且文本編碼為 utf-8。第二行及最后一行 Persons 為文檔的根元素,然后每個 Person 元素即表示每個人,姓名存儲在 Person 元素的 FullName 屬性中,Corporation 元素用來存儲所在公司名稱,Description 元素用來存儲公司簡介,Products 元素用來存儲公司產品簡介。至此,該文檔里面包含了比爾·蓋茨、喬布斯、拉里·佩奇三位 IT 界大佬的信息。

用 jQuery 解析此 XML 文檔

首先要用$.get()方法載入 XML 文件,然后用find()方法找到所有 Person 元素,再用 each() 方法進行遍歷,代碼如下:

 

 
  1. <script type="text/javascript"
  2. jQuery(document).ready(function() { 
  3. /* 先用 $.get 方法載入 XML 文件 */ 
  4. $.get("EmployeesInformation.xml"function(xmlData) { 
  5. /* 我們要講得到的數據放入一個表格里面,這里定義一個表格字符竄 */ 
  6. var htmlData = "<table border='1'>"
  7.  
  8. /* 找到 Person 元素,然后用 each 方法進行遍歷 */ 
  9. $(xmlData).find("Person").each(function() { 
  10. var Person = $(this); /* 將當前元素復制給 Person */ 
  11. var FullName = Person.attr("FullName"); /* 獲取 Person 的 FullName 屬性 */ 
  12. var Corporation = Person.find("Corporation").text(); /* 獲取 Person 中子元素 Corporation 的值 */ 
  13. var Description = Person.find("Description").text(); /* 獲取 Person 中子元素 Description 的值 */ 
  14. var Products = Person.find("Products").text(); /* 獲取 Person 中子元素 Products 的值 */ 
  15.  
  16. /* 將得到的數據,放到表格的一行中 */ 
  17. htmlData += "<tr>"
  18. htmlData += " <td>" + FullName + "</td>"
  19. htmlData += " <td>" + Corporation + "</td>"
  20. htmlData += " <td>" + Description + "</td>"
  21. htmlData += " <td>" + Products + "</td>"
  22. htmlData += "</tr>"
  23. }); 
  24.  
  25. //完成表格字符竄 
  26. htmlData += "</table>"
  27. //將表格放到 body 中 
  28. $("body").append(htmlData); 
  29. }); 
  30. }); 
  31. </script> 

簡單解釋一下這段代碼,由于此 XML 文檔相對簡單,所以這段代碼也比較簡短,代碼中$.get()方法的第一個參數為 XML 文件地址,第二個參數是一個回調函數,回調函數中參數 xmlData 即為 XML 文件中的數據。在此示例中,我們打算 XML 中的數據以表格的形式顯示在 HTML 中,所以先構建一個表格字符串 htmlData 先。

緊接著,用find()方法,找到所有名為 Person 的元素,因為每個 Person 元素即表示一個人,然后再用 each() 方法進行遍歷,把遍歷到的元素賦個一個變量 Person。用Person.attr()方法去除元素的 FullName 屬性,也就是人員的姓名,再用find()方法找到其子元素 Corporation,Description 和 Products 并返回它們的文本內容,并用 tr 和 td 標簽將它們包裝在表格的一個行里面。最后完成表格字符串,并將表格添加到 body 標簽中。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 中文字幕h| 国产午夜精品久久久久久免费视 | 国产免费中文字幕 | 日本人乱人乱亲乱色视频观看 | 欧美日韩一 | 中文字幕在线免费看 | 少妇色诱麻豆色哟哟 | 日本在线免费观看 | 色阁五月 | 欧美日韩在线播放一区 | 亚洲综人网 | 欧美日韩免费一区 | 羞羞草视频 | av噜噜在线 | 一区二区久久电影 | 一区二区三区精品国产 | 97青青| 粉嫩粉嫩一区二区三区在线播放 | 欧美 日韩 中文 | 国产91对白叫床清晰播放 | 久久国产一二区 | 欧美xxxwww | 蜜桃视频在线免费观看 | 国产精品久久久久久一区二区三区 | 国产精品久久久久久影视 | 国内精品一级毛片免费看 | 一区二区三区欧美日韩 | 毛片一级片 | 国产精品一区视频 | 欧美精品毛片 | 国产美女爽到喷白浆的 | 羞羞草视频 | 国产女厕一区二区三区在线视 | cosplay裸体福利写真 | 免费放黄网站在线播放 | 日本免费中文字幕 | 九九精品在线观看 | 插插操 | 在线免费av网站 | av老司机久久 | 成人在线观看免费高清 |