JavaScript實現(xiàn)讀取與輸出XML文件數(shù)據(jù)的方法示例
本文實例講述了JavaScript實現(xiàn)讀取與輸出XML文件數(shù)據(jù)的方法。分享給大家供大家參考,具體如下:
一、介紹
通過JavaScript讀取XML文檔中數(shù)據(jù)的方法很多。
其根本的思路就是:首先在后臺加載XML文檔,然后通過JavaScript獲取文檔中所需的數(shù)據(jù),最后應用HTML展示獲取的數(shù)據(jù)。
二、獲取XML元素的屬性值的應用
下面應用attributes屬性和getNamedItem()方法獲取一個指定的XML文檔中的屬性值。
三、代碼
首先創(chuàng)建一個XML文檔,并且為指定的元素設(shè)置屬性,程序代碼如下:
<?xml version="1.0" encoding="GB2312"?>
<employes>
<employe id='1' attendence='經(jīng)理'>
<number>1001</number>
<name>程**</name>
<object>PHP</object>
<tel>84971547</tel>
<address>長春市</address>
<e_mail>cak**@sina.com</e_mail>
</employe>
</employes>
然后創(chuàng)建一個index.html文件,實現(xiàn)XML元素中數(shù)據(jù)和屬性值的輸出。
獲取employe元素的引用,通過attributes獲取employe元素的屬性集合,用getNamedItem()方法獲取集合attributes中attendence對象的引用,并將其賦值給變量attendenceperson。最后通過字符串的拼接實現(xiàn)XML文檔中數(shù)據(jù)和屬性值的輸出,這里獲取的屬性值為“經(jīng)理”。
程序代碼如下:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>www.dhdzp.com 獲取XML元素的屬性值</title>
</head>
<script>
function get_xml(){
var xmldoc,employesNode,employeNode; //定義變量
var nameNode,titleNode,numberNode,displayText; //定義變量
var attributes,attendenceperson
xmldoc = new ActiveXObject("Microsoft.XMLDOM");
xmldoc.async = false;
xmldoc.load("index.xml"); //載入指定的XML文檔
employesNode=xmldoc.documentElement; //獲取根節(jié)點
employeNode=employesNode.firstChild; //訪問根元素下的第一個節(jié)點
numberNode=employeNode.firstChild; //獲取number元素
nameNode=numberNode.nextSibling; //獲取name元素
objectNode=nameNode.nextSibling;
telNode=objectNode.nextSibling;
attributes=employeNode.attributes; //獲取employe節(jié)點的屬性集合
attendenceperson=attributes.getNamedItem("attendence") //獲取集合指定對象的引用
//實現(xiàn)字符串的拼接,輸出XML文檔中的數(shù)據(jù)
displayText="員工信息:"+numberNode.firstChild.nodeValue+','+nameNode.firstChild.nodeValue+', '+objectNode. firstChild.nodeValue+','+telNode.firstChild.nodeValue+"<br>職務:"+attendenceperson.value;
div.innerHTML=displayText; //指定在ID標識為div的<div>標簽中輸出字符串displayText的信息
}
</script>
<body>
<h1>輸出XML元素中的數(shù)據(jù)和屬性值</h1>
<!--應用onClick事件調(diào)用函數(shù)get_xml()-->
<input type="button" value="獲取XML元素的屬性值" onClick="get_xml()">
<div id="div"></div>
</body>
</html>
四、運行結(jié)果

注:這里使用了ActiveXObject來進行針對xml文件的操作,需要使用兼容IE的瀏覽器才能得到運行效果。否則會提示:ActiveXObject is not defined
PS:這里再為大家提供幾款關(guān)于xml操作的在線工具供大家參考使用:
在線XML/JSON互相轉(zhuǎn)換工具:
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
更多關(guān)于JavaScript相關(guān)內(nèi)容可查看本站專題:《JavaScript操作XML文件技巧總結(jié)》、《JavaScript文件與目錄操作技巧匯總》、《JavaScript中ajax操作技巧總結(jié)》、《JavaScript錯誤與調(diào)試技巧總結(jié)》及《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》
希望本文所述對大家JavaScript程序設(shè)計有所幫助。
- JS實現(xiàn)讀取xml內(nèi)容并輸出到div中的方法示例
- javascript 讀取XML數(shù)據(jù),在頁面中展現(xiàn)、編輯、保存的實現(xiàn)
- JavaScript 解析讀取XML文檔 實例代碼
- JS讀取XML文件示例代碼
- firefox中JS讀取XML文件
- JS通過ajax動態(tài)讀取xml文件內(nèi)容的方法
- JS實現(xiàn)加載和讀取XML文件的方法詳解
- Jsp結(jié)合XML+XSLT將輸出轉(zhuǎn)換為Html格式
- JS讀取XML文件數(shù)據(jù)并以table形式顯示數(shù)據(jù)的方法(兼容IE與火狐)
- JS使用ajax從xml文件動態(tài)獲取數(shù)據(jù)顯示的方法
- javascript XML數(shù)據(jù)顯示為HTML一例
相關(guān)文章
JavaScript提升性能的常用技巧總結(jié)【經(jīng)典】
這篇文章主要介紹了JavaScript提升性能的常用技巧,結(jié)合實例形式總結(jié)分析了JavaScript編程中常見的性能提升優(yōu)化技巧,涉及作用域、循環(huán)、變量、DOM及函數(shù)節(jié)流等,非常具有實用價值,需要的朋友可以參考下2016-06-06
完美解決spring websocket自動斷開連接再創(chuàng)建引發(fā)的問題
下面小編就為大家?guī)硪黄昝澜鉀Qspring websocket自動斷開連接再創(chuàng)建引發(fā)的問題。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-03-03
JavaScript ECMA-262-3 深入解析(二):變量對象實例詳解
這篇文章主要介紹了JavaScript ECMA-262-3變量對象,結(jié)合實例形式詳細分析了JavaScript ECMA變量對象相關(guān)概念、原理、用法及操作注意事項,需要的朋友可以參考下2020-04-04
javascript委托(Delegate)blur和focus用法實例分析
這篇文章主要介紹了javascript委托(Delegate)blur和focus用法,實例分析了javascript委托的用法及針對常見瀏覽器的使用技巧,需要的朋友可以參考下2015-05-05
JavaScript開發(fā)人員的10個關(guān)鍵習慣小結(jié)
還在一味沒有目的的編寫JavaScript代碼嗎?那么你就OUT了!讓我們一起來看看小編為大家搜羅的JavaScript開發(fā)人員應該具備的十大關(guān)鍵習慣吧2014-12-12
基于Express框架使用POST傳遞Form數(shù)據(jù)
這篇文章主要為大家詳細介紹了基于Express框架使用POST傳遞Form數(shù)據(jù),具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-08-08
最好用的Bootstrap fileinput.js文件上傳組件
這篇文章主要為大家詳細介紹了最好用的Bootstrap fileinput.js文件上傳組件的使用方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-12-12

