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>

  • 相关阅读:
    ajax的基础知识
    前端必备的php的基础知识点
    关于事件的简单汇总
    Django rest-framework(目录)
    Django(目录)
    前端(目录)
    数据库知识(目录)
    数据库基础
    并发编程(目录)
    网络编程
  • 原文地址:https://www.cnblogs.com/worldreason/p/1217546.html
Copyright © 2011-2022 走看看