• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Web设计中如何使用XML数据

    XML数据源对象是一个ActiveX控件,允许你在XML文件和HTML页面之间操作数据。本文将向你展示如何从各种XML数据源中提取数据,以及如何使用JavaScript显示这些数据。

    XML数据源对象DSO是一个微软ActiveX控件,构建在微软IE4以后的版本上。这个对象允许你把一个外部的XML文件或者嵌入HTML文件中的内容提取到HTML页面中。

    你可以在一个Web页面中使用XML - DSO从一个外部XML文件中选取内容,从嵌入Web页面的XML中提取XML数据,然后使用JavaScript操作这些数据。然而,并不建议在Internet中使用这个对象,因为DSO只能工作在MSIE 4以上的浏览器中,因此这可能会带来一些兼容性问题。 所以,在企业内部网使用XML-DSO是很合适的。

    开始

    为了初始化XML - DSO对象,我们使用<OBJECT>标记。 用于XML-DSO的CLASSID是:

    CLSID:550dda30-0541-11d2-9ca9-0060b0ec3d39

    这ID唯一标识XML-DSO。使用下面的代码在一个Web页面中初始化这个控件:

    <OBJECT ID="SomeID" CLASSID="CLSID:550dda30-0541-11d2-9ca9-0060b0ec3d39"></OBJECT>

    虽然大部分对象需要许多参数与之相关联,但是XML-DSO不需要任何参数。

    使用一个XML数据岛析取数据

    首先,通过使用<XML>标记包含一个XML数据岛。其次,给它分配一个ID,xmldb --以备以后使用。 数据实际上是使用HTML标记:<ALT>,<SPAN>,<DIV>等等提取的。代码列表1中的代码使用了<SPAN>标记。datasrc属性指定了你想从中提取数据的那个数据岛。datafld属性指定了你想要的数据的XML标记。所以,第一个<SPAN>提取名称,而第二<SPAN>提取性别。

    代码列表1:

    <!-- example1.htm -->
    <html>
    <head>
    <title>XML DSO-example1.htm</title>
    </head>
    <body bgcolor="#FFFFFF">
    <xml id="xmldb">
    <db>
    <member>
    <name>Premshree Pillai<name>
    <sex>male</sex>
    </member>
    <member>
    <name>Vinod</name>
    <sex>male</sex>
    </member>
    </db>
    </xml>

    <span datasrc="#xmldb" datafld="name"<</span>
    <br>
    <span datasrc="#xmldb" datafld="sex"></span>

    </body>
    </html>

    注意这段代码没有初始化一个XML-DSO对象。这是因为XML数据岛的使用中已经隐式地创建了一个。输出应为:

    Premshree Pillai
    male

    注意在XML数据岛中有两个<name>和<sex>标记。使用这个方法,你只能提取这些标记中的第一个实例。代码列表2中的代码使用<TABLE>标记提取所有的实例:

    输出将是:
    Name Sex
    Premshree Pillai male
    Vinod male

    在代码列表2中,<TABLE>标记使用<TD>标记内的<DIV>标记提取数据。表格将自动重复<member>(<name>和<sex>的母标记)的每个实例。 代码列表2:

    <!-- example2.htm -->
    <html>
    <head>
    <title>XML DSO-example2.htm</title>
    </head>
    <body bgcolor="#FFFFFF">

    <xml id="xmldb">
    <db>
    <member>
    <name>Premshree Pillai<name>
    <sex>male</sex>
    </member>
    <member>
    <name>Vinod</name>
    <sex>male</sex>
    </member>
    </db>
    </xml>

    <table datasrc="#xmldb" border="1">
    <thead>
    <th>Name</th>
    <th>Sex</th>
    </thead>
    <tr>
    <td><div datafld="name"></div></td>
    <td><div datafld="sex"></div></td>
    </tr>
    </table>

    </body>
    </html>

    使用外部XML文件提取数据

    为了使用XML-DSO加载一个外部XML文件,你必须显式的包含这个对象并且使用一些JavaScript。

    首先创建一个XML-DSO对象,使用ID myXML。添加宽度和高度属性到<OBJECT>标记中,然后设置它们的值为0。这保证XML-DSO对象不会占据你的Web页面的任何空间。

    其次,使用datasrc创建一个象myXML一样的表--类似于代码列表2中一样。代码使用<DIV>标记(在TD标记之)提取数据,使用datafld作为第一栏的信息,并且使用URL作为第二栏。添加<SCRIPT>标记,因为在这里,外部的XML使用Java脚本显式地声明你想要加载的XML文件。

    设置变量xmlDso为myXML.XMLDocument。myXML引用你已经创建的对象。接下来,使用XML-DSO的load()方法加载example3.xml。文件example3.xml连接到对象myXML上。

    <!-- example3.xml -->
    <?xml version="1.0" ?>
    <ticker>
    <item>
    <message>JavaScript Ticker using XML DSO</message>
    <URL>http://someURL.com</URL>
    </item>
    </ticker>
    现在,研究一下下面的HTML页面:

    <!-- example3.htm -->
    <html>
    <head>
    <title>XML DSO-example3.htm</title>
    <script language="JavaScript">
    function load() {
    var xmlDso=myXML.XMLDocument;
    xmlDso.load("example3.xml");
    }
    </script>
    </head>
    <body bgcolor="#FFFFFF" onLoad="load()">

    <object id="myXML" CLASSID="clsid:550dda30-0541-11d2-9ca9-0060b0ec3d39"
    width="0" height="0"></object>

    <table datasrc="#myXML" border="1">
    <thead>
    <th>Message</th>
    <th>URL</th>
    </thead>
    <tr>
    <td><div datafld="message"></div></td>
    <td><div datafld="URL"></div></td>
    </tr>
    </table>

    </body>
    </html>

    输出应是:

    Message URL
    JavaScript Ticker using XML DSO http://someURL.com

    上面的脚本非常特殊化。下面给出一个更一般的脚本:

    <script language="JavaScript">
    var xmlDso;
    function load(xmlFile, objName) {
    eval(''xmlDso=''+objName+''.XMLDocument'');
    xmlDso.load(xmlFile);
    }
    </script>
    Now, to load any XML file use:
    load("SomeXMLFile.xml","anyXmlDsoObject");(csdn) (出处:PConline)
    上一篇:XML卷之实战锦囊(5):结构树图
    下一篇:XML指南——XML编码
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Web设计中如何使用XML数据 Web,设计,中,如何,使用,XML,