jQuery加載及解析XML文件的方法實例分析
本文實例講述了jQuery加載及解析XML文件的方法。分享給大家供大家參考,具體如下:
1、簡述
XML(eXtensible Markup Language)即可擴展標記語言,與HTML一樣,都是屬于SGML標準通用語言。
2、 Content-Type
很多情況下XML文件不能正常解析都是由于Content-Type沒有設置好。如果Content-Type本身就是一個XML文件則不需要設置;如果是由后臺程序動態(tài)生成的,那么就需要設置Content-Type為“text/xml”,否則jQuery會以默認的“text/html”方式處理,導致解析失敗。以下是幾種常見語言中設置Content-Type的方式。
header("Content-Type:text/xml"); //PHP
response.ContentType = "text/xml"; //ASP
response.setContentType("text/xm"); //JSP
3、創(chuàng)建實例XML文檔(Student.xml)
<?xml version="1.0" encoding="utf-8" ?> <stulist> <student email="peter@163.com"> <name>peter</name> <id>1</id> </student> <student email="ken@163.com"> <name>ken</name> <id>2</id> </student> </stulist>
4、獲取XML
$(document).ready(function() { $.ajax({ url: '/xml/Student.xml', type: 'GET', dataType: 'xml', timeout: 1000, //設定超時 cache: false, //禁用緩存 error: function(xml) { alert("加載XML文檔出錯!"); }, success: GetStudentComplete //設置成功后回調函數(shù) }); });
通過JQuery的Ajax函數(shù)進行讀取。
5、 解釋XML
//獲取XML成功后回調函數(shù) function GetStudentComplete(xml) { $(xml).find("student").each(function(i) { //查找所有student節(jié)點并遍歷 var id = $(this).children("id"); //獲得子節(jié)點 var id_vaule = id.text(); //獲取節(jié)點文本 var email_vaule = $(this).attr("email"); //獲取節(jié)點的屬性 alert(id_vaule); alert(email_vaule); }); }
解析XML文檔與解析DOM一樣,也可以用find()、children()等函數(shù)來解析和用each()方法來進行遍歷,另外也可以用text()和attr()方法來獲取節(jié)點文本和屬性。
PS:這里再為大家提供幾款關于xml操作相關在線工具供大家參考使用:
在線XML/JSON互相轉換工具:
http://tools.jb51.net/code/xmljson
在線格式化XML/在線壓縮XML:
http://tools.jb51.net/code/xmlformat
XML在線壓縮/格式化工具:
http://tools.jb51.net/code/xml_format_compress
xml代碼在線格式化美化工具:
http://tools.jb51.net/code/xmlcodeformat
更多關于jQuery相關內容感興趣的讀者可查看本站專題:《jQuery操作xml技巧總結》、《jQuery操作json數(shù)據(jù)技巧匯總》、《jQuery擴展技巧總結》、《jQuery常用插件及用法總結》、《jQuery常見經典特效匯總》及《jquery選擇器用法總結》
希望本文所述對大家jQuery程序設計有所幫助。
相關文章
輕松學習jQuery插件EasyUI EasyUI實現(xiàn)樹形網絡基本操作(2)
這篇文章主要幫助大家輕松學習jQuery插件EasyUI,針對EasyUI實現(xiàn)樹形網絡基本操作,分為三大方面:動態(tài)加載、添加分頁、以及惰性加載節(jié)點,感興趣的小伙伴們可以參考一下2015-11-11jquery中ajax請求后臺數(shù)據(jù)成功后既不執(zhí)行success也不執(zhí)行error的完美解決方法
這篇文章主要介紹了jquery中ajax請求后臺數(shù)據(jù)成功后既不執(zhí)行success也不執(zhí)行error解決方法,需要的朋友可以參考下2017-12-12基于twbsPagination.js分頁插件使用心得(分享)
下面小編就為大家?guī)硪黄趖wbsPagination.js分頁插件使用心得(分享)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-10-10