DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> XML學習教程 >> XML詳解 >> [推薦]微軟的XML解析器
[推薦]微軟的XML解析器
編輯:XML詳解     

XML解析器可以讀取、更新、創建、操作一個XML文檔。

使用XML解析器

微軟的XML解析器是和IE5.0+浏覽器捆綁在一起的。

一旦你安裝了IE5.0,那麼就獲得了XML解析器。這個浏覽器除了被浏覽器內部調用外,還可以在腳本中或者程序中調用。這個解析器的特點是支持與程序設計語言無關的編程模型,他支持以下技術:

  • Javascript, VBScript, Perl, VB, Java, C++ 等等
  • W3C XML 1.0 和 XML DOM
  • DTD 和 XML文檔驗證

如果浏覽器使用JavaScript作為腳本語言,那麼利用下面的代碼可以創建XML文檔對象:

var xmlDoc=new ActiveXObject("Microsoft.XMLDOM")

如果浏覽器使用VBScript作為腳本語言,那麼利用下面的代碼可以創建XML文檔對象:

set xmlDoc=CreateObject("Microsoft.XMLDOM")

如果在ASP程序中使用VBScript腳本語言,那麼就可以使用下面的代碼形式:

set xmlDoc=Server.CreateObject("Microsoft.XMLDOM")

將XML文檔載入解析器

使用腳本代碼可以將XML文檔載入解析器。

下面的代碼可以將一個XML文檔載入解析器:

<script type="text/Javascript">
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM")xmlDoc.async="false"xmlDoc.load("note.XML")
// ....... processing the document goes here</script>

第二行代碼創建Microsoft XML解析器的實例。

第三行代碼關閉異步載入,確保XML解析器在把XML文檔完全載入以前不會對XML文檔進行解析。

第四行則告訴解析器需要載入的XML文檔名字是note.XML。

把純XML文檔由字符載入解析器

解析器可以從一個文本字符串中載入XML文本。

下面的代碼演示了將文本字符串載入解析器:

<script type="text/Javascript">
var text="<note>"
text=text+"<to>Tove</to><from>Jani</from>"
text=text+"<heading>Reminder</heading>"
text=text+"<body>Don't forget me this weekend!</body>"
text=text+"</note>"
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM")xmlDoc.async="false"xmlDoc.loadXML(text)
// ....... processing the document goes here</script>

注意這裡載入字符串使用的是"loadXML()"方法)(而不是前面用過的"load()"方法), "loadXML()"是用於載入字符串,"load()"是用於載入XML文檔。

使用JavaScript語言顯示XML數據

可以使用JavaScript語言來顯示XML數據。

JavaScript (或者 VBScript)可以從XML文檔中導入數據,並將這些數據在Html頁面中顯示出來。

下面我們來看一下XML和Html是如何進行相互之間的互補的,首先來看一個XML 文檔 (note.XML

<?XML version="1.0" encoding="gb2312" ?> 
- <note>
  <from>小奀</from> 
  <to>小林</to> 
  <message>周末一起去吃火鍋呀</message> 
  </note>

), 然後我們看一個包含了導入XML文檔兵顯示在Html頁面中的JavaScript腳本代碼的Html文檔(note.htm) 。

<Html>
<head>
<script
type="text/Javascript"
for="window"
event="onload">
var XMLDoc=new ActiveXObject("Microsoft.XMLDOM")
XMLDoc.async="false"
XMLDoc.load("note.XML")
nodes=XMLDoc.documentElement.childNodes
a1.innerText=nodes.item(0).text
a2.innerText=nodes.item(1).text
a3.innerText=nodes.item(2).text
a4.innerText=nodes.item(3).text
</script>
</head>
<body bgcolor="yellow">
<h1>W3Schools Internal Note</h1>
<b>To:</b>
<span id="a1"></span>
<br />
<b>From:</b>
<span id="a2"></span>
<hr />
<b><span id="a3"></span></b>
<hr />
<span id="a4"></span>
</body>
</Html>

去看看他是如何工作的, 自己嘗試一下吧

<Html>
<head>
<script type="text/Javascript"
for="window" event="onload">
var XMLDoc=new ActiveXObject("Microsoft.XMLDOM")
XMLDoc.async="false"
XMLDoc.load("xml_note.XML")
nodes=XMLDoc.documentElement.childNodes
to.innerText=    nodes.item(0).text
from.innerText=  nodes.item(1).text
header.innerText=nodes.item(2).text
body.innerText=  nodes.item(3).text
</script>
<title>Html using XML data</title>
</head>
<body bgcolor="yellow">
<h1>W3Schools.com Internal Note</h1>
<b>To: </b>
<span id="to"> </span>
<br />
<b>From: </b>
<span id="from"></span>
<hr>
<b><span id="header"></span></b>
<hr>
<span id="body"></span>
</body>
</Html>

你可以在我們的DOM School中了解更多的關於JavaScript的知識。 

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved