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>

  • 相关阅读:
    Xcode 自定义代码段
    Foundation和CoreFoundation之间的转换
    如何由新特性跳转到App首页
    判断是否是新特性,决定是否进入欢迎页
    iOS面试题01
    公司生日聚会-水长城之游
    jquery操作html元素之(设置内容和属性)
    jquery操作html元素之( 获得内容和属性)
    解决:Map的area属性标签鼠标Hover可以给area加背景
    在网页制作中,面对设计图,网页制作人员一般要遵循的原则是什么?
  • 原文地址:https://www.cnblogs.com/worldreason/p/1217546.html
Copyright © 2011-2022 走看看