JavaScript實現(xiàn)讀取與輸出XML文件數(shù)據(jù)的方法示例
本文實例講述了JavaScript實現(xiàn)讀取與輸出XML文件數(shù)據(jù)的方法。分享給大家供大家參考,具體如下:
一、介紹
通過JavaScript讀取XML文檔中數(shù)據(jù)的方法很多。
其根本的思路就是:首先在后臺加載XML文檔,然后通過JavaScript獲取文檔中所需的數(shù)據(jù),最后應(yīng)用HTML展示獲取的數(shù)據(jù)。
二、獲取XML元素的屬性值的應(yīng)用
下面應(yīng)用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.dbjr.com.cn 獲取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>職務(wù):"+attendenceperson.value;
div.innerHTML=displayText; //指定在ID標識為div的<div>標簽中輸出字符串displayText的信息
}
</script>
<body>
<h1>輸出XML元素中的數(shù)據(jù)和屬性值</h1>
<!--應(yīng)用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)文章
js下利用userData實現(xiàn)客戶端保存表單數(shù)據(jù)
對于多數(shù)網(wǎng)頁制作的朋友,實現(xiàn)在客戶端保存在網(wǎng)頁表單上的信息,比較多的是采用Cookie技術(shù)來實現(xiàn),這些功能例如:下拉列表框選擇的選項,文本框輸入的數(shù)據(jù)等。2010-06-06
JavaScript對象數(shù)組排序函數(shù)及六個用法
本文給大家分享一個用于數(shù)組或者對象的排序的函數(shù)。該函數(shù)可以以任意深度的數(shù)組或者對象的值作為排序基數(shù)對數(shù)組或的元素進行排序2015-12-12
JavaScript數(shù)值數(shù)組排序示例分享
在Javascript中我們已知有兩個可以直接用來進行數(shù)組排序的方法reverse()和sort()。其中reverse()是按照反向?qū)τ跀?shù)組進行排序的,而sort()是按照正向進行排序的。2014-05-05
基于BootStrap Metronic開發(fā)框架經(jīng)驗小結(jié)【八】框架功能總體界面介紹
這篇文章主要介紹了基于BootStrap Metronic開發(fā)框架經(jīng)驗小結(jié)【八】框架功能總體界面介紹 的相關(guān)資料,需要的朋友可以參考下2016-05-05
微信小程序?qū)崿F(xiàn)時間戳格式轉(zhuǎn)換
這篇文章主要為大家詳細介紹了微信小程序?qū)崿F(xiàn)時間戳格式轉(zhuǎn)換,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2020-07-07
深入理解Javascript中的循環(huán)優(yōu)化
這篇文章介紹了Javascript中的循環(huán)優(yōu)化,有需要的朋友可以參考一下2013-11-11
一文學(xué)會用JS判斷文字是否被省略(ellipsis)
這篇文章主要給大家介紹了用JS如何判斷文字被省略ellipsis,CSS幫我們搞定了省略,但是JS并不知道文本什么時候被省略了,所以我們得通過JS來計算,接下來,我將介紹2種方法來實現(xiàn)JS計算省略,需要的朋友可以參考下2023-08-08

