zoukankan      html  css  js  c++  java
  • xmlhttp处理xml文档时需要注意的问题一

    xmlhttp  获取的xml对象,解析时根据xml文档的格式,需要不同的处理细节。这里是编程过程需要注意的地方。

    一定要注意xml文档的格式。注意元素<.... />与属性name="value"的区别。

    根据不同的xml文档格式,解析时要使用不同的方法。 元素是Element,而属性是attribute。

    一种数据,可以安排它的某些部分为element或者attribute,根据安排的不同,解析的方法也不同。

     

    例如,对于如下 xml的解析方法

    -----------------menu.xml is here---------------

     <?xml version="1.0" standalone="yes" ?>
    <menu>
      <item xbm="0" xbmc="未知的性别" />
      <item xbm="1" xbmc="男" />
      <item xbm="2" xbmc="女" />
      <item xbm="9" xbmc="未说明的性别" />
    </menu>

     

    --------------------javascript----------------------------------------- 

     

    <script language="javascript" type="text/javascript">
            // ---------------------测试函数一 -----------------------
            function func1()
            {
                var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP.3.0");
                xmlhttp.open("GET","http://localhost/menu.xml%22,false);
                xmlhttp.send();
                var xmldoc = xmlhttp.responseXML;
                var root = xmldoc.documentElement;
                alert(root.xml);
                var data = root.getElementsByTagName("item");
                for(var i=0;i<data.length;i++)
                {
                    var item = data[i];
                    alert("性别码=" + item.attributes[0].nodeValue + "\r\n" + "性别名称=" + item.attributes[0].nodeName);
                }
            }
        </script>

     

     

    如果xml格式为:

    <?xml version="1.0" standalone="yes" ?>
    <menu>
      <item xbm="0" xbmc="未知的性别" />
      <item xbm="1" xbmc="男" />
      <item xbm="2" xbmc="女" />
      <item xbm="9" xbmc="未说明的性别" />
    </menu>

     

    解析方法为:

     

     <script language="javascript" type="text/javascript">
            // ---------------------测试函数一 -----------------------
            function func1()
            {
                var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP.3.0");
                xmlhttp.open("GET","http://localhost/dm_xb.xml%22,false);
                xmlhttp.send();
                var xmldoc = xmlhttp.responseXML;
                var data = xmldoc.getElementsByTagName("data");
                for(var i=0;i<data.length;i++)
                {
                    var item = data[i];
                    var xbm = item.getElementsByTagName("xbm")[0].firstChild.data;
                    var xbmc = item.getElementsByTagName("xbmc")[0].firstChild.data;
                    alert("性别码=" + xbm + "\r\n" + "性别名称=" + xbmc);
                }
            }
        </script>

  • 相关阅读:
    SpringCloud : yml文件配置 获取系统环境变量的值
    SpringCloud : 多个 @FeignClient 注解 value 设置为同一个应用的解决方案
    SpringCloud : Feign 不捆绑远程应用名称, 实现服务应用名称传入,调用通用自动化
    SpringCloud : Feign 使用 FastJson 解析数据
    Mybatis中在log日志或控制台打印执行的sql
    iOS 基于 itemServices 进行本地安装 ipa 应用安装包
    MySQL5.5 数据热备份
    如何在 Fiddler Script 中 自定义 修改 Request 、 Response
    Dubbo 分布式 日志 追踪
    shell脚本并发执行
  • 原文地址:https://www.cnblogs.com/worldreason/p/1217546.html
Copyright © 2011-2022 走看看