js 解析xml实例
Jun 01, 2016 am 09:55 AM
xml
解析する
先贴上本实例需要用到的xml
<code><?xml version='1.0' encoding='gb2312'?> <persons> <person> <name>z</name> <age>16</age> <weight>50</weight> <height>160</height> </person> <person> <name>李四</name> <age>17</age> <weight>51</weight> <height>165</height> </person> <person> <name>王二</name> <age>18</age> <weight>55</weight> <height>170</height> </person> <person> <name>javior</name> <age>20</age> <weight>68</weight> <height>179</height> </person> </persons> </code>
ログイン後にコピー
实例-:解析XML字符。
<code><script type="text/javascript"> function loadXmlString(xmlString){ var xmlDoc=null; if(!window.DOMParser && window.ActiveXObject){ //判断浏览器的类型 支持IE浏览器 window.DOMParser 判断是否是非ie浏览器 var xmlDomVersions = ['MSXML.2.DOMDocument.6.0','MSXML.2.DOMDocument.3.0','Microsoft.XMLDOM']; for(var i=0;i<xmlDomVersions.length;i++){ try{ xmlDoc = new ActiveXObject(xmlDomVersions[i]); xmlDoc.async = false; xmlDoc.loadXML(xmlString); //loadXML方法载入xml字符串 break; }catch(e){ } } }else if(window.DOMParser && document.implementation && document.implementation.createDocument){//支持Mozilla浏览器 try{ /* DOMParser 对象解析 XML 文本并返回一个 XML Document 对象。 * 要使用 DOMParser,使用不带参数的构造函数来实例化它,然后调用其 parseFromString() 方法 * parseFromString(text, contentType) 参数text:要解析的 XML 标记 参数contentType文本的内容类型 * 可能是 "text/xml" 、"application/xml" 或 "application/xhtml+xml" 中的一个。注意,不支持 "text/html"。 */ domParser = new DOMParser(); xmlDoc = domParser.parseFromString(xmlString, 'text/xml'); }catch(e){ } } else{ return null; } return xmlDoc; } </script></code>
ログイン後にコピー
实例二:解析XML文件。
<code><script type="text/javascript"> function loadXmlFile(xmlFile){ var xmlDoc=null; if(!window.DOMParser && window.ActiveXObject){ var xmlDomVersions = ['MSXML.2.DOMDocument.6.0','MSXML.2.DOMDocument.3.0','Microsoft.XMLDOM']; for(var i=0;i<xmlDomVersions.length;i++){ try{ xmlDoc = new ActiveXObject(xmlDomVersions[i]); break; }catch(e){ } } }else if(document.implementation && document.implementation.createDocument){ try{ xmlDoc = document.implementation.createDocument('','',null); }catch(e){ } } else{ return null; } if(xmlDoc!=null){ xmlDoc.async = false; xmlDoc.load(xmlFile); } return xmlDoc; } </script></code>
ログイン後にコピー
将xml文件或字符串转化为JS对象后,我们就可以使用xml dom来读取xml中的数据了。
代码如下:
<code><script type="text/javascript"> var persons=xml.getElementsByTagName("person"); var str=""; for(var i=0;i<persons.length;i++){ var fc= persons[i]; var name=fc.getElementsByTagName("name")[0].innerHTML; var age=fc.getElementsByTagName("age")[0].innerHTML; var weight=fc.getElementsByTagName("weight")[0].innerHTML; var height=fc.getElementsByTagName("height")[0].innerHTML; str+="name:"+name+" age:"+age+" weight:"+weight+" height:"+height+"<br/>"; } </script></code>
ログイン後にコピー
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

人気の記事
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
1週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌

人気の記事
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
1週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック
Gmailメールのログイン入り口はどこですか?
7288
9


Java チュートリアル
1622
14


CakePHP チュートリアル
1342
46


Laravel チュートリアル
1259
25


PHP チュートリアル
1206
29



PowerPoint を使用して XML ファイルを開くことはできますか?

Win11の新機能分析:Microsoftアカウントへのログインをスキップする方法
