青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

JavaScript解析XML的方法總結

最近一個項目中要用到樹形列表,本來是用mztree的,但數據用了xml,本來xml就是樹形目錄,就打算用JavaScript直接解析xml文件了,網上找到一些JavaScript操作xml的方法,在此做一個總結。

我的xml文件Login.xml如下:

<?xml version="1.0" encoding="utf-8" ?>

<Login>

<Character>

<C Text="熱血" Value="0"></C>

<C Text="弱氣" Value="1"></C>

<C Text="激情" Value="2"></C>

<C Text="冷靜" Value="3"></C>

<C Text="冷酷" Value="4"></C>

</Character>

<Weapon>

<W Text="光束劍" Value="0"></W>

<W Text="光束配刀" Value="1"></W>

</Weapon>

<EconomyProperty>

<P Text="平均型" Value="0"></P>

<P Text="重視攻擊" Value="1"></P>

<P Text="重視敏捷" Value="2"></P>

<P Text="重視防御" Value="3"></P>

<P Text="重視命中" Value="4"></P>

</EconomyProperty>

</Login>

現在我需要對這個xml文件的內容進行操作。

首先,我們需要加載這個xml文件,JavaScript中加載xml文件,是通過XMLDOM來進行的:

// 加載xml文檔

loadXML = function(xmlFile)

{

var xmlDoc;

if(window.ActiveXObject)

{

xmlDoc = new ActiveXObject('Microsoft.XMLDOM');

xmlDoc.async = false;

xmlDoc.load(xmlFile);

}

else if (document.implementation&&document.implementation.createDocument)

{

xmlDoc = document.implementation.createDocument('', '', null);

xmlDoc.load(xmlFile);

}

else

{

return null;

}

return xmlDoc;

}

xml文件對象出來了, 接下去我就要對這個文檔進行操作了。

比如說,我們現在需要得到節點Login/Weapon/W的第一個節點的屬性,那么我們可以如下進行:

// 首先對xml對象進行判斷

checkXMLDocObj = function(xmlFile)

{

var xmlDoc = loadXML(xmlFile);

if(xmlDoc==null)

{

alert('您的瀏覽器不支持xml文件讀取,于是本頁面禁止您的操作,推薦使用IE5.0以上可以解決此問題!');

window.location.href='/Index.aspx';

}

return xmlDoc;

}

// 然后開始獲取需要的Login/Weapon/W的第一個節點的屬性值

var xmlDoc = checkXMLDocObj('/EBS/XML/Login.xml');

var v = xmlDoc.getElementsByTagName('Login/Weapon/W')[0].childNodes.getAttribute('Text')

而我在我的程序中的寫法是這樣子的,當然我在程序中的寫法是已經應用到實際中的了.一并給出來,以供查看。

initializeSelect = function(oid, xPath)

{

var xmlDoc = checkXMLDocObj('/EBS/XML/Login.xml');

var n;

var l;

var e = $(oid);

if(e!=null)

{

n = xmlDoc.getElementsByTagName(xPath)[0].childNodes;

l = n.length;

for(var i=0; i<l; i++)

{

var option = document.createElement('option');

option.value = n[i].getAttribute('Value');

option.innerHTML = n[i].getAttribute('Text');

e.appendChild(option);

}

}

}

上面的訪問代碼中,我們是通過xmlDoc.getElementsByTagName(xPath)來進行的。

還可以通過xmlDoc.documentElement.childNodes(1)..childNodes(0).getAttribute('Text')進行訪問。

一些常用方法:

◆ xmlDoc.documentElement.childNodes(0).nodeName,可以得到這個節點的名稱;

◆ xmlDoc.documentElement.childNodes(0).nodeValue,可以得到這個節點的值. 這個值是來自于這樣子的xml格式:<a>b</b>, 于是可以得到b這個值;

◆ xmlDoc.documentElement.childNodes(0).hasChild,可以判斷是否有子節點。

根據我的經驗,最好是使用getElementsByTagName(xPath)的方法對節點進行訪問,因為這樣子可以直接通過xPath來定位節點,這樣子會有更好的性能。

   

posted on 2010-10-20 11:27 wrh 閱讀(211) 評論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


導航

<2025年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

統計

常用鏈接

留言簿(19)

隨筆檔案

文章檔案

收藏夾

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美三日本三级三级在线播放| 亚欧美中日韩视频| 欧美sm视频| 免费欧美在线| 欧美国产精品一区| 欧美日韩综合| 国产九色精品成人porny| 国产欧美在线| 最新国产成人在线观看| 一区二区三区日韩在线观看 | 亚洲精品极品| 日韩亚洲精品视频| 亚洲欧美在线磁力| 开元免费观看欧美电视剧网站| 免费视频一区| 一区二区三区久久| 久久久久久69| 欧美日本一区| 香蕉免费一区二区三区在线观看| 久久成人一区| 亚洲高清视频在线观看| 亚洲电影第1页| 亚洲午夜电影在线观看| 欧美呦呦网站| 欧美黑人国产人伦爽爽爽| 99国产精品视频免费观看| 欧美一区二区三区在线看| 久久亚洲色图| 国产精品日日做人人爱| 亚洲国产欧美一区二区三区久久| 亚洲欧美久久| 亚洲日本免费电影| 久久精品国产在热久久 | 亚洲卡通欧美制服中文| 亚洲欧美日韩国产精品| 欧美成人一区二区三区在线观看| 国产欧美综合一区二区三区| 亚洲精品国产视频| 久久久久国产精品一区三寸| 日韩亚洲国产欧美| 另类亚洲自拍| 国产精品私拍pans大尺度在线| 亚洲人精品午夜| 久久免费精品日本久久中文字幕| 在线视频中文亚洲| 欧美精品18videos性欧美| 在线精品视频一区二区| 欧美一区中文字幕| 亚洲一区二区三区高清不卡| 欧美日产在线观看| 亚洲精品国产精品国自产在线| 乱中年女人伦av一区二区| 午夜精彩视频在线观看不卡| 国产精品成人免费精品自在线观看| 亚洲精品国产精品乱码不99| 亚洲福利视频一区| 蜜桃av久久久亚洲精品| 亚洲二区视频在线| 欧美69视频| 欧美91大片| 日韩一区二区免费看| 亚洲精品小视频| 欧美日韩国产免费观看| 99视频一区二区| 亚洲精品一区中文| 欧美三级在线| 欧美一区91| 久久激情一区| 亚洲激情视频| 亚洲精品日本| 国产精品视频精品| 久久精品视频网| 葵司免费一区二区三区四区五区| 亚洲国产视频一区| 亚洲三级视频| 国产精品免费网站在线观看| 欧美在线高清视频| 久久99伊人| 亚洲欧洲精品一区二区三区波多野1战4| 欧美黄色一区二区| 欧美区一区二| 欧美一区观看| 玖玖精品视频| 欧美精品成人91久久久久久久| 一区二区三区www| 亚洲一区在线播放| 今天的高清视频免费播放成人| 欧美不卡一卡二卡免费版| 欧美成人中文字幕| 亚洲欧美视频一区二区三区| 篠田优中文在线播放第一区| 亚洲国产精品第一区二区| 亚洲第一在线综合在线| 欧美日韩精品欧美日韩精品一| 午夜在线精品偷拍| 久久影院午夜片一区| 亚洲一级二级| 久久久人人人| 午夜精品久久久久久久白皮肤| 欧美伊人精品成人久久综合97| 久久国产成人| 久久精品国产91精品亚洲| 免费在线播放第一区高清av| 亚洲欧美国产精品桃花| 久久婷婷国产综合尤物精品| 午夜在线a亚洲v天堂网2018| 牛人盗摄一区二区三区视频| 久久超碰97中文字幕| 欧美国产一区二区三区激情无套| 久久国产精品网站| 欧美精品一区三区| 蜜臀久久久99精品久久久久久| 欧美日韩一视频区二区| 女人天堂亚洲aⅴ在线观看| 国产精品成人一区二区网站软件 | 亚洲精品欧美日韩专区| 亚洲欧美日韩精品久久久久| aa级大片欧美三级| 久久精品在线| 亚洲欧美大片| 欧美成人精品一区二区| 久久精品主播| 国产精品女主播| 日韩亚洲国产精品| 日韩一级大片| 久久综合成人精品亚洲另类欧美| 欧美一区二区精美| 欧美三级电影大全| 亚洲国产精品尤物yw在线观看 | 亚洲日本va午夜在线电影| 欧美一区二区在线免费播放| 亚洲自拍16p| 欧美视频一区二区三区四区| 亚洲精品久久久蜜桃| 亚洲人成艺术| 欧美精品性视频| 久色成人在线| 国产精品丝袜久久久久久app| 亚洲欧洲一区二区在线播放| 91久久夜色精品国产九色| 亚洲无亚洲人成网站77777| 亚洲日本成人| 欧美久久一区| 亚洲欧洲一区二区在线播放| 亚洲毛片av| 欧美日韩国产高清视频| 亚洲精品一区在线观看香蕉| 在线视频精品一区| 国产精品vvv| 亚洲欧美综合精品久久成人| 久久久精品国产免费观看同学| 99日韩精品| 午夜精品久久| 久久久免费精品视频| 精品91在线| 蜜桃久久精品乱码一区二区| 欧美国产日韩二区| 一区二区高清在线观看| 国产精品久久久久99| 亚洲欧美日韩第一区| 久久久久久久成人| 亚洲成人自拍视频| 欧美日韩国产综合久久| 国产精品99久久不卡二区| 欧美一区二区视频观看视频| 国产在线观看精品一区二区三区| 欧美激情精品久久久久久黑人 | 精品成人一区二区三区四区| 久久久久久久综合色一本| 欧美风情在线| 亚洲视频一区在线| 国产一区二区欧美日韩| 欧美国产日韩亚洲一区| 亚洲一区二区在线播放| 免费成人高清在线视频| 亚洲一区二区三区高清| 激情综合久久| 欧美亚州韩日在线看免费版国语版| 欧美一区二区三区免费观看| 91久久综合亚洲鲁鲁五月天| 欧美一区二区三区久久精品| 1024日韩| 国产午夜精品全部视频播放 | 一区二区视频免费在线观看| 欧美日本簧片| 久久免费国产| 亚洲一区二区在线看| 亚洲国产视频直播| 久久久久久亚洲精品杨幂换脸| 亚洲午夜精品久久久久久app| 在线观看视频一区二区| 欧美性感一类影片在线播放 | 美乳少妇欧美精品| 亚洲欧美激情视频在线观看一区二区三区| 国产一区二区精品久久| 欧美视频一区二区三区在线观看| 久久综合五月| 久久久999国产| 亚洲一区二区精品视频| 亚洲国产精品一区二区尤物区 |