Ajax对xml信息的接收和处理操作实例分析

本文实例讲述了Ajax对xml信息的接收和处理操作。分享给大家供大家参考,具体如下:

Ajax负责请求和接收xml信息,DOM负责处理xml信息。

DOM:

php中,DOM是php 与 xml(html)之间沟通的桥梁
JavaScript中,DOM是JavaScript 与 html(xml)之间沟通的桥梁

xml需要从服务器端返回到客户端被JavaScript处理
Ajax负责请求xml,DOM(JavaScript)负责处理xml信息
Ajax+JavaScript实现对xml的接收处理,可以方便我们后期实现一个静态网站(html+css+JavaScript)实现对各个接口数据的处理。

自定义的xml文件

09.xml

<?xml version="1.0" encoding="UTF-8"?>
<weather>
  <city>
    <name>北京</name>
    <temp>23-31度</temp>
    <wind>东风</wind>
  </city>
  <city>
    <name>上海</name>
    <temp>25-32度</temp>
    <wind>东南风</wind>
  </city>
  <city>
    <name>深圳</name>
    <temp>29-35度</temp>
    <wind>西南风</wind>
  </city>
</weather>

Ajax对xml信息的接收和处理处理代码

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  <title></title>
<script type="text/javascript">
  function f1(){
    //ajax请求xml信息
    //JavaScript的dom技术处理xml
    var xhr = new XMLHttpRequest();
    xhr.onreadystatechange = function(){
      if(xhr.readyState == 4){
        //alert(xhr.responseXML);//object Document 其是xml根节点的父节点对象
        var xmldom = xhr.responseXML;
        //console.log(xmldom.firstChild);//<weather>
        var citys = xmldom.getElementsByTagName('city');
        //console.log(citys);// HTMLCollection[city, city, city]
        /*
        citys[1];//第二个city的元素节点对象
        for(var k in citys[1]){//k代表元素节点对象的成员名称
          console.log(k);
          //有输出这样一个成员方法:getElementsByTagName
          //结论:document对象和普通元素对象都有getElementsByTagName()方法
        }
        */
        var s = "";
        for(var i=0; i<citys.length; i++){
          var name = citys[i].getElementsByTagName('name')[0].firstChild.nodeValue;
          var temp = citys[i].getElementsByTagName('temp')[0].firstChild.nodeValue;
          var wind = citys[i].getElementsByTagName('wind')[0].firstChild.nodeValue;
          s += "城市:" + name + "--温度:" + temp + "--风向:" + wind + "<br />";
        }
        document.getElementById('result').innerHTML = s;
      }
    }
    xhr.open('get','./09.xml');
    xhr.send(null);
  }
</script>
</head>
<body>
  <h2>利用Ajax+JavaScript实现对xml的接收和处理</h2>
  <input type="button" value="触发" onclick="f1()" />
  <div id="result"></div>
</body>
</html>

运行结果

更多关于ajax相关内容感兴趣的读者可查看本站专题:《jquery中Ajax用法总结》、《JavaScript中ajax操作技巧总结》、《PHP+ajax技巧与应用小结》及《asp.net ajax技巧总结专题》

希望本文所述对大家ajax程序设计有所帮助。

时间: 2019-07-01

jquery $.ajax()取xml数据的小问题解决方法

开始的代码如下: 复制代码 代码如下: $.ajax({ type: "get", url: "Database/App_all.xml", dataType: "xml", timeout: 2000, beforeSend: function () {}, success: function (xml) { $(xml).find("app[id='id-1']").find("auther").app

JS通过ajax动态读取xml文件内容的方法

本文实例讲述了JS通过ajax动态读取xml文件内容的方法.分享给大家供大家参考.具体分析如下: 下面的JS代码读取note.xml文件,并填充显示相关字段 HTML文件代码如下 <!DOCTYPE html> <html> <head> <script> function loadXMLDoc(url) { var xmlhttp; if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome,

JS使用ajax从xml文件动态获取数据显示的方法

本文实例讲述了JS使用ajax从xml文件动态获取数据显示的方法.分享给大家供大家参考.具体分析如下: 下面的JS代码通过ajax检索xml文件的内容动态展示到网页,真个页面无刷新 <!DOCTYPE html> <html> <head> <script> function loadXMLDoc(url) { var xmlhttp; var txt,x,xx,i; if (window.XMLHttpRequest) {// code for IE7+,

用Ajax读取xml文件的简单例子

到此就可以就发送请求读取服务器端的XML数据了,最后要做的就是处理数据了. 关于XMLHttpRequest对象,请参考About XMLHttpRequest Object一文. 看例子: //AjaxDemo.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"

用JQuery 实现AJAX加载XML并解析的脚本

1,Content-Type 很多时候无法解析就是Content-Type的问题. 如果本身就是xml文件,请跳过这一步 动态生成的XML一定要将其设置为text/xml,否则默认就是text/html也就是普通的文本了. 常见语言的Content-Type设置 复制代码 代码如下: header("Content-Type:text/xml"); //php response.ContentType="text/xml" //asp response.setHea

通过AJAX的JS、JQuery两种方式解析XML示例介绍

JQuery版 复制代码 代码如下: $.ajax({ url : "order/order_orderDetail.do?params.type=merge", type : "post", data : params, success : function(xml) { hide(); if(xml == ""){ Dialog.popTip("找不到需要合并的订单", 2); }else{ var myTable=doc

jQuery+ajax读取并解析XML文件的方法

本文实例讲述了jQuery+ajax读取并解析XML文件的方法.分享给大家供大家参考,具体如下: ajax.xml: <?xml version="1.0" encoding="UTF-8"?> <stulist> <student email="1@1.com"> <name>zhangsan</name> <id>1</id> </student>

javascript解析ajax返回的xml和json格式数据实例详解

本文实例讲述了javascript解析ajax返回的xml和json格式数据.分享给大家供大家参考,具体如下: 写个例子,以备后用 一.JavaScript 解析返回的xml格式的数据: 1.javascript版本的ajax发送请求 (1).创建XMLHttpRequest对象,这个对象就是ajax请求的核心,是ajax请求和响应的信息载体,单是不同浏览器创建方式不同 (2).请求路径 (3).使用open方法绑定发送请求 (4).使用send() 方法发送请求 (5).获取服务器返回的字符串

AJAX使用post发送数据xml格式接受数据

注意点: 1. 用POST发送数据,在2号线函数(也是ajax发送数据的函数:ajaxCall)必须加上一句:xmlObject.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); 接着使用xmlObject.send(data);发送 2.3号线函数要注意: 1.禁用缓存(建议,不必要):header("Cache-Control:no-cache"); 2

用Ajax读取XML格式的数据

复制代码 代码如下: <!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/ja

Jquery Ajax学习实例 向页面发出请求,返回XML格式数据

一.AjaxSample.aspx 处理业务数据,产生XML数据,供JqueryRequest.aspx调用,代码如下: 复制代码 代码如下: protected void Page_Load(object sender, EventArgs e) { string uid = Request.QueryString["username"]; string pwd = Request.QueryString["password"]; Response.Content

Jquery Ajax 学习实例2 向页面发出请求 返回JSon格式数据

一.AjaxJson.aspx 处理业务数据,产生JSon数据,供JqueryRequest.aspx调用,代码如下: 复制代码 代码如下: protected void Page_Load(object sender, EventArgs e) { string u = Request["UserName"]; string p = Request["Password"]; string output = string.Format("'UserName

django通过ajax发起请求返回JSON格式数据的方法

本文实例讲述了django通过ajax发起请求返回JSON格式数据的方法.分享给大家供大家参考.具体实现方法如下: 这是后台处理的: def checkemail(request): user = None if request.POST.has_key('email'): useremail = request.POST['email'] result = {} user = User.objects.filter(useremail__iexact = useremail) if user:

jQuery解析与处理服务器端返回xml格式数据的方法详解

本文实例讲述了jQuery解析与处理服务器端返回xml格式数据的方法.分享给大家供大家参考,具体如下: 1.php代码: <?php header("Content-Type:text/xml; charset=utf-8");//声明浏览器端返回数据的格式为xml文档格式 echo "<?xml version='1.0' encoding='utf-8'?>". "<comments>". "<c

Spring mvc实现Restful返回xml格式数据实例详解

spring mvc实现Restful返回xml格式数据 最近,想在自己的小项目中搭建一个Restful风格的服务接口api,项目用的spring mvc 3,听说spring mvc本身就能十分方便的支持restful的实现,于是查询了下资料,果然非常强大. 在一次偶然的#墙#外#(你懂的)状态下浏览到了一个老外的博客,举了几个入门例子十分经典,原文是E文+被墙状态,觉得有必要扒过来收藏学习下. 在本示例中,我们将向您展示如何将对象转换成xml格式并通过spring mvc框架返回给用户. 技

Jquery Ajax学习实例7 Ajax所有过程事件分析示例

一.Ajax所有过程事件分析 JQuery在执行Ajax的过程中会触发很多事件.   这些事件可以分为两种事件,一种是局部事件(Local),一种是全局事件(Global).   局部事件:可以通过$.ajax来调用,你某一个Ajax请求不希望产生全局的事件,则可以设置global:false.   全局事件:跟click等事件类似,可以绑定到到每一个DOM元素上.   这些事件的按照事件的触发顺序如下介绍: 局部事件(Local) 全局事件(Global) ajaxStart 全局事件开始新的

Jquery Ajax学习实例6 向WebService发出请求,返回DataSet(XML) 异步调用

一.WebService.asmx: 处理业务数据,在GetDataSet()方法中产生DataSet(XML)数据,供JqueryRequest.aspx调用,代码如下: 复制代码 代码如下: [WebMethod] public DataSet GetDataSet() { DataSet ds = new DataSet(); DataTable dt = new DataTable(); dt.Columns.Add("Name", Type.GetType("Sys

Jquery Ajax学习实例3 向WebService发出请求,调用方法返回数据

一.WebService.asmx 处理业务数据,在GetWhether方法中产生天气情况数据,供JqueryRequest.aspx调用,代码如下: 复制代码 代码如下: [System.Web.Script.Services.ScriptService] public class WebService : System.Web.Services.WebService { public WebService () { //如果使用设计的组件,请取消注释以下行 //InitializeCompo

Jquery Ajax学习实例4 向WebService发出请求,返回实体对象的异步调用

一.WebService.asmx: 处理业务数据,在GetPerson方法中产生Person实体类数据,供JqueryRequest.aspx调用,代码如下: 复制代码 代码如下: [WebMethod] public Person GetPerson(string name, int age, string address) { Person p = new Person() { Name = name, Age = age, Address = address }; return p; }

Jquery Ajax学习实例5 向WebService发出请求,返回泛型集合数据的异步调用

一.WebService.asmx: 处理业务数据,在GetList方法中产生泛型集合数据,供JqueryRequest.aspx调用,代码如下: [WebMethod] 复制代码 代码如下: public List<string> GetList() { List<string> list = new List<string>(); list.Add("aaaaaaaaaaaa"); list.Add("bbbbbbbbbbbb"