JS访问XML的简单例子

原创 2004年08月18日 17:05:00

JS_XML.htm

<html>
<head>
<script>
var iIndex=-1;
var objectDoc=new ActiveXObject("MSXML2.DOMDocument.3.0");
objectDoc.load("Root.xml");
var objectItem=objectDoc.selectNodes("/Root/Item");
function getNode(objectDoc,strPath)
{
 var returnValue="";
 var strValue=objectDoc.selectSingleNode(strPath);
 if(strValue)returnValue=strValue.text;
 return returnValue;
}
function getDataNext()
{
 iIndex++;
 if(iIndex>objectItem.length-1)iIndex=0;
 document.forms[0].ProductTag.value=getNode(objectDoc,"/Root/Item["+iIndex+"]/ProductTag");
 document.forms[0].Price.value=getNode(objectDoc,"/Root/Item["+iIndex+"]/PricePer");
 document.forms[0].Quantity.value=getNode(objectDoc,"/Root/Item["+iIndex+"]/Quantity");
 document.forms[0].Total.value=getNode(objectDoc,"/Root/Item["+iIndex+"]/Subtotal");
}
function getDataPrev()
{
 iIndex--;
 if(iIndex<0)iIndex=objectItem.length-1;
 document.forms[0].ProductTag.value=getNode(objectDoc,"/Root/Item["+iIndex+"]/ProductTag");
 document.forms[0].Price.value=getNode(objectDoc,"/Root/Item["+iIndex+"]/PricePer");
 document.forms[0].Quantity.value=getNode(objectDoc,"/Root/Item["+iIndex+"]/Quantity");
 document.forms[0].Total.value=getNode(objectDoc,"/Root/Item["+iIndex+"]/Subtotal");
}
function init()
{
 document.all.XMLTitle.innerText=getNode(objectDoc,"/Root/Cigarette");
 document.all.XMLDate.innerText=getNode(objectDoc,"/Root/Date");
}
</script>
</head>
<body onload="init();getDataNext()">
<form>
<div id="XMLTitle"></div>
<br>
<table border="0">
  <tr><td>产品名称</td><td><input type="text" name="ProductTag"></td></tr>
  <tr><td>产品价格</td><td><input type="text" name="Price"></td></tr>
  <tr><td>产品数量</td><td><input type="text" name="Quantity"></td></tr>
  <tr><td>金额合计</td><td><input type="text" name="Total"></td></tr>
</table>
<br>
<div id="XMLDate"></div>
<br>
<input type="button" value="<<" onClick="getDataPrev();">
<input type="button" value=">>" onClick="getDataNext();">
</form>
</body>
</html>
Root.xml

<?xml version="1.0" encoding="gb2312"?>
<Root>
  <Cigarette>实时价格一览表</Cigarette>
  <Item id="1">
    <ProductTag>石林(软包)</ProductTag>
    <PricePer>3.50</PricePer>
    <Quantity>100</Quantity>
    <Subtotal>350.00</Subtotal>
    <Description>NULL</Description>
  </Item>
  <Item id="2">
    <ProductTag>桂花(白、软包)</ProductTag>
    <PricePer>2.50</PricePer>
    <Quantity>10</Quantity>
    <Subtotal>25.00</Subtotal>
    <Description>NULL</Description>
  </Item>
  <Item id="3">
    <ProductTag>一品黄山(硬包)</ProductTag>
    <PricePer>5.50</PricePer>
    <Quantity>1000</Quantity>
    <Subtotal>5500.00</Subtotal>
    <Description>NULL</Description>
  </Item>
  <Item id="4">
    <ProductTag>红山茶(硬包)</ProductTag>
    <PricePer>3.50</PricePer>
    <Quantity>1</Quantity>
    <Subtotal>3.50</Subtotal>
    <Description>NULL</Description>
  </Item>
  <Date>08/17/2004</Date>
</Root>

一个简单的XML文档例子

一个简单的XML文档例子: Tove Jani Reminder Don't forget me this weekend!         文档的第一行:一个应该经常包含的XML申明,它定义...
  • PINBODEXIAOZHU
  • PINBODEXIAOZHU
  • 2014-12-31 15:23:40
  • 8367

一个简单的XML

XML Quick Startajieajie@aolhoo.com20010115第一行是一个XML声明,表示文档遵循的是XML的1.0 版的规范。第二行定义了文档里面的第一个元素(element)...
  • jiagun4
  • jiagun4
  • 2007-05-13 01:41:00
  • 848

【JavaScript】最简单的一个例子

以下是最简单的一个JavaScript例子 我的第一个JavaScript例子【菜鸟教程】 function displayDate(){ document.getElementById...
  • River_Continent
  • River_Continent
  • 2017-08-01 21:34:23
  • 835

js读取xml的例子,个人编程

  • 2011年08月18日 13:34
  • 21KB
  • 下载

js对xml的简单操作

  • 2013年01月23日 10:50
  • 4KB
  • 下载

java--通过sax方式解析xml文件的简单实例

1.重写的继承自DefaultHandler的方法,部分代码如下: @Override public void startElement(String uri, String localName,...
  • a1491758730
  • a1491758730
  • 2015-10-18 09:36:25
  • 825

JAXB解析xml实例

核心类:package com.jaxb; import java.io.File; import java.io.FileInputStream; import java.io.IOExcepti...
  • yelove1990
  • yelove1990
  • 2015-01-23 11:18:10
  • 296

logback.xml示例

logback.xml示例首先大家都知道,slf4j是一套通用的日志组件接口,而具体的实现有很多种,如著名的log4j,而logback则是log4j的升级版。初入手大家可能对如何对其进行配置感到疑惑...
  • qq_21508059
  • qq_21508059
  • 2017-11-26 03:14:02
  • 70
收藏助手
不良信息举报
您举报文章:JS访问XML的简单例子
举报原因:
原因补充:

(最多只允许输入30个字)