zoukankan      html  css  js  c++  java
  • 用Ajax读取XML格式的数据

     用Ajax读取XML格式的数据,只需要读取XMLHttpRequest对象返回的responseXML属性即可。代码如下:

      1、Client - helloworld.htm

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
    >
    <html>
    <head>
    <title>Ajax Hello World</title>
    <script type="text/javascript">
    var xmlHttp;

    function createXMLHttpRequest(){
        
    if(window.ActiveXObject){
            xmlHttp 
    = new ActiveXObject("Microsoft.XMLHTTP");
        }
        
    else if(window.XMLHttpRequest){
            xmlHttp 
    = new XMLHttpRequest();
        }
    }

    function startRequest(){
        createXMLHttpRequest();
        
    try{
            xmlHttp.onreadystatechange 
    = handleStateChange;
            xmlHttp.open(
    "GET""data.xml"true);
            xmlHttp.send(
    null);    
        }
    catch(exception){
            alert(
    "您要访问的资源不存在!");
        }
    }

    function handleStateChange(){    
        
    if(xmlHttp.readyState == 4){        
            
    if (xmlHttp.status == 200 || xmlHttp.status == 0){
                
    // 取得XML的DOM对象
                var xmlDOM = xmlHttp.responseXML;
                
    // 取得XML文档的根
                var root = xmlDOM.documentElement;            
                
    try
                {
                    
    // 取得<info>结果
                    var info = root.getElementsByTagName('info');
                    
    // 显示返回结果
                    alert("responseXML's value: " + info[0].firstChild.data);
                }
    catch(exception)
                {
                    
                }
            }
        }
    }
    </script>
    </head>
    <body>
        
    <div>
            
    <input type="button" value="return ajax responseXML's value"
                    onclick
    ="startRequest();" />
        
    </div>
    </body>
    </html>

    2、Server - data.xml
    <?xml version="1.0" encoding="GB2312" ?> 
    <root>
        
    <info>hello world!</info>
    </root>

    附源码:responseXML.rar
  • 相关阅读:
    No binary for PhantomJS browser on your platform. Please, set "PHANTOMJS_BIN"
    用MeanJS和Yeoman生成器生成【翻译】
    Angular中在前后端分离模式下实现权限控制
    HierarchyId 与.Net Framework 4.5.3报错
    AngularUI Router 概要【转】
    SpecFlow使用入门【转】
    使用AutoMapper实现Dto和Model的自由转换(下)【转】
    使用AutoMapper实现Dto和Model的自由转换(中)【转】
    使用AutoMapper实现Dto和Model的自由转换(上)【转】
    有jQuery背景,该如何用AngularJS编程思想?
  • 原文地址:https://www.cnblogs.com/dj258/p/640934.html
Copyright © 2011-2022 走看看