如何使用JavaScript访问XML数据

  介绍

小编给大家分享一下如何使用JavaScript访问XML数据,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!

在网络浏览器软件中,可以Internet Explorer (IE)现在是一种标准的软件。可以看的到,运行不同版本的Windows操作系统(和很多其他的操作系统)的每一台机器几乎都使用IE。微软已经通过ActiveX控件将IE的功能包含在执行成熟的XML处理技术中。

网上冲浪
我们以一个标准的顺序文档而开始,如表一所示。这一文档包含简单的顺序数据以提供网络冲浪者浏览之用。不仅仅为了显示这些数据,我们还提供了一个简单的用户界面,网上冲浪都可以使用这一界面来浏览XML文档。

表答:秩序。xml

& lt; ? xml  version=?.0“, ?比;   & lt; Order>   & lt;才能Account> 9900234 & lt;/Account>   & lt;才能Item  id=?“比;   ,,,& lt; SKU> 1234 & lt;/SKU>   ,,,& lt; PRicePer> 5.95 & lt;/PRicePer>   ,,,& lt; Quantity> 100 & lt;/Quantity>   ,,,& lt; Subtotal> 595.00 & lt;/Subtotal>   ,,,& lt; Description> Super  Widget  Clamp   & lt;才能/Item>   & lt;才能Item  id=?“比;   ,,,& lt; SKU> 6234 & lt;/SKU>   ,,,& lt; PricePer> 22.00 & lt;/PricePer>   ,,,& lt; Quantity> 10 & lt;/Quantity>   ,,,& lt; Subtotal> 220.00 & lt;/Subtotal>   ,,,& lt; Description> Mighty  Foobar  Flange   & lt;才能/Item>   & lt;才能Item  id=?“在   ,,,& lt; SKU> 9982 & lt;/SKU>   ,,,& lt; PricePer> 2.50 & lt;/PricePer>   ,,,& lt; Quantity> 1000 & lt;/Quantity>   ,,,& lt; Subtotal> 2500.00 & lt;/Subtotal>   ,,,& lt; Description> Deluxe  Doohickie   & lt;才能/Item>   & lt;才能Item  id=?“比;   ,,,& lt; SKU> 3256 & lt;/SKU>   ,,,& lt; PricePer> 389.00 & lt;/PricePer>   ,,,& lt; Quantity> 1 & lt;/Quantity>   ,,,& lt; Subtotal> 389.00 & lt;/Subtotal>   ,,,& lt; Description> Muckalucket  Bucket   & lt;才能/Item>   & lt;才能NumberItems> 1111 & lt;/NumberItems>   & lt;才能Total> 3704.00 & lt;/Total>   & lt;才能OrderDate> 07/07/2002</OrderDate>   & lt;才能OrderNumber> 8876 & lt;/OrderNumber>   & lt;/Order>

我们使用一个网络表单以访问这一XML文档,这一表单将显示SKU,价格,数量,各部分的小计,以及顺序中的每一选项的描述。我们的表单还包含向前和向后浏览选项的按钮。

网页的构成
网页的重要部分是在于表单,我们将使用一个表以易读的方式在屏幕上显示。下面是显示HTML表的代码片段:

& lt; form>   & lt;才能table 边界=?”;在   ,,,& lt; tr> & lt; td> SKU & lt; td> & lt; input 类型=皌ext", name=癝KU"祝辞& lt;/td> & lt;/tr>   ,,,& lt; tr> & lt; td> Price & lt; td> & lt; input 类型=皌ext", name=癙rice"祝辞& lt;/td> & lt;/tr>   ,,,& lt; tr> & lt; td> Quantity & lt; td> & lt; input 类型=皌ext", name=癚uantity"祝辞& lt;/td> & lt;/tr>   ,,,& lt; tr> & lt; td> Total & lt; td> & lt; input 类型=皌ext", name=癟otal"祝辞& lt;/td> & lt;/tr>   ,,,& lt; tr> & lt; td> Description & lt; td> & lt; input 类型=皌ext"   ,name=癉escription"祝辞& lt;/td> & lt;/tr>   & lt;才能/table>   & lt;才能input 类型=癰utton",价值=https://www.yisu.com/zixun/" <" onClick=" getDataPrev ();"> <输入   type="按钮" value="> " onClick=" getDataNext (); ">   

请注意到,我们在表的下面包含了两个按钮,即通过getDataNext()和getDataPrev()函数来浏览前一个和后一个的记录,这也是我们所要讨论的问题。

脚本
其实,我们网页的实质部分不是在于表单,而是在于控制表单的脚本。在我们的脚本中包括四个部分,首先,我们通过载入XML文档而初始化网页第。二部分是导航到下一个记录。第三步是导航到前一个记录。第四部分是从XML文档中提取单一的值。表B显示了我们的网页的全部内容。

表B: jsxml。html

& lt; html>   & lt;才能head>   ,,,& lt; script 语言=癹avaScript"比;   & lt; !   ,,,vari =, 1;   ,,,varorderDoc =, new  ActiveXObject (“MSXML2.DOMDocument.3.0");   ,,,orderDoc.load (“order.xml");   ,,,var  items =, orderDoc.selectNodes(“/订单/Item");   ,,,,,,,   ,,,function  getNode(医生,,xpath), {   ,,,,,varretval =,““   ,,,,,var  value =, doc.selectSingleNode (xpath);   ,,,,,if (值),retval =, value.text;   ,,,,,return  retval;   ,,,}   ,,,,   ,,,function  getDataNext (), {   ,,,,,我+ +;   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

如何使用JavaScript访问XML数据