Jquery Ajax解析XML数据(同步及异步调用)简单实例


Posted in Javascript onFebruary 12, 2014
$.ajax({
                async: true, // 默认true(异步请求)
                cache: true, // 默认true,设置为 false 将不会从浏览器缓存中加载请求信息。
                type: "POST", // 默认:GET 请求方式:[POST/GET]
                dataType: "xml", //默认["xml"/"html"] 返回数据类型:["xml" / "html" / "script" / "json" / "jsonp"]
                url: "Test.ashx", // 默认当前地址,发送请求的地址
                data: { key: "value" }, // 发送到服务器的数据
                error: function(xml) { alert('Error loading XML document' + xml); }, // 请求失败时调用
                timeout: 1000, // 设置请求超时时间
                success: function(xml) { // 请求成功后回调函数 参数:服务器返回数据,数据格式.
                    $("#users").empty();
                    // 用Jquery处理xml数据
                    $(xml).find('Table').each(function() {
                        var loginname = $(this).find("Loginname").text();
                        var Name").text();
                        $("#users").append("<li>" + loginname + " - " + name + "</li>");
                    });
                    /*
                    $(xml).find('user').each(function(i) {
                        var loginname = $(xml).find("user loginname").eq(i).text();
                        var user name").eq(i).text();
                        $("#users").append("<p>" + loginname + "</p>" + "<p>" + name + "</p><Br />");
                    }) 
                    $(xml).find("student").each(function(i){
                        var id"); //取对象
                        var id_value=$(this).children("id").text(); //取文本
                        alert(id_value);//这里就是ID的值了。
                        alert($(this).attr("email")); //这里能显示student下的email属性。
                        //最后输出了,这个是cssrain的写法,貌似比macnie更JQ一点
                        $('<li></li>').html(id_value).appendTo('ol');
                    });
                    */
                }
            })

用ashx文件返回XML数据:
<%@ WebHandler Language="C#" %>
using System;
using System.Web;
using System.Text;
using System.Data;
public class Test : IHttpHandler {
    public void ProcessRequest (HttpContext context) {
        context.Response.StatusCode = 200;
        context.Response.Cache.SetCacheability(HttpCacheability.NoCache);
        DataSet ds = new DataSet("AccountList");
        ds = GetList("Account","AccountId","Loginname,Name",50,1,false, false,"1=1");
        context.Response.ContentType = "text/xml";
        context.Response.Charset = "GB2312";
        context.Response.Clear();
        context.Response.Write("<?xml version=\"1.0\" encoding=\"gbk\"?>\n " + ds.GetXml());
        /*
        StringBuilder sb = new StringBuilder();
        sb.Append("<?xml version=\"1.0\" encoding=\"gbk\"?>");
        sb.Append("<AccountList>");
        sb.Append("<Account><loginname>Loro5</loginname><name>wulu</name></user>");
        sb.Append("</Account>");
        context.Response.Write(sb.ToString());
        */

        context.Response.End();
    }
    public bool IsReusable {
        get {
            return false;
        }
    }
}
Javascript 相关文章推荐
使用dynatrace-ajax跟踪JavaScript的性能
Apr 12 Javascript
jquery 3D球状导航的文章分类
Jul 06 Javascript
jQuery源码分析-04 选择器-Sizzle-工作原理分析
Nov 14 Javascript
JavaScript制作的可折叠弹出式菜单示例
Apr 04 Javascript
jQuery插件MixItUp实现动画过滤和排序
Apr 12 Javascript
浅谈Sizzle的“编译原理”
Apr 14 Javascript
JS正则截取两个字符串之间及字符串前后内容的方法
Jan 06 Javascript
vue-vuex中使用commit提交mutation来修改state的方法详解
Sep 16 Javascript
jQuery实现的记住帐号密码功能完整示例
Aug 03 jQuery
实例讲解React 组件生命周期
Jul 08 Javascript
解决elementUI 切换tab后 el_table 固定列下方多了一条线问题
Jul 19 Javascript
Vue 打包的静态文件不能直接运行的原因及解决办法
Nov 19 Vue.js
利用JQuery和Servlet实现跨域提交请求示例分享
Feb 12 #Javascript
jquery ajax,ashx,json的用法总结
Feb 12 #Javascript
Jquery中ajax方法data参数的用法小结
Feb 12 #Javascript
利用jquery.qrcode在页面上生成二维码且支持中文
Feb 12 #Javascript
Jquery中国地图热点效果-鼠标经过弹出提示层信息的简单实例
Feb 12 #Javascript
JavaScript cookie的设置获取删除详解
Feb 11 #Javascript
JavaScript新窗口与子窗口传值详解
Feb 11 #Javascript
You might like
php清空(删除)指定目录下的文件,不删除目录文件夹的实现代码
2014/09/04 PHP
Laravel5框架自定义错误页面配置操作示例
2019/04/17 PHP
页面调用单个swf文件,嵌套出多个方法。
2011/11/21 Javascript
javascript学习笔记(十五) js间歇调用和超时调用
2012/06/20 Javascript
Javascript在IE和FireFox中的不同表现简析
2012/12/03 Javascript
百度地图api应用标注地理位置信息(js版)
2013/02/01 Javascript
javascript中兼容主流浏览器的动态生成iframe方法
2014/05/05 Javascript
JS不能跨域借助jquery获取IP地址的方法
2014/08/20 Javascript
json+jQuery实现的无限级树形菜单效果代码
2015/08/27 Javascript
微信开发 消息推送实现代码
2016/10/21 Javascript
Node.js的Mongodb使用实例
2016/12/30 Javascript
详解vuex 中的 state 在组件中如何监听
2017/05/23 Javascript
Vue中如何实现轮播图的示例代码
2017/07/27 Javascript
JS设计模式之惰性模式(二)
2017/09/29 Javascript
vue的安装及element组件的安装方法
2018/03/09 Javascript
vuex进阶知识点巩固
2018/05/20 Javascript
浅谈node中的cluster集群
2018/06/02 Javascript
vue动画打包后失效问题的解决方法
2018/09/18 Javascript
react+ant design实现Table的增、删、改的示例代码
2018/12/27 Javascript
vue全局自定义指令-元素拖拽的实现代码
2019/04/14 Javascript
[04:53]DOTA2英雄基础教程 祈求者
2014/01/03 DOTA
Python3基础之函数用法
2014/08/13 Python
Python实现将数据库一键导出为Excel表格的实例
2016/12/30 Python
Python微信库:itchat的用法详解
2017/08/14 Python
python3.6 实现AES加密的示例(pyCryptodome)
2018/01/10 Python
python模块smtplib实现纯文本邮件发送功能
2018/05/22 Python
python实现整数的二进制循环移位
2019/03/08 Python
Python 绘制酷炫的三维图步骤详解
2019/07/12 Python
Python多线程实现支付模拟请求过程解析
2020/04/21 Python
Python基于模块Paramiko实现SSHv2协议
2020/04/28 Python
草莓巧克力:Shari’s Berries
2017/02/07 全球购物
《我的伯父鲁迅先生》教学反思
2014/02/12 职场文书
生物科学专业毕业生求职信
2014/06/02 职场文书
施工安全汇报材料
2014/08/17 职场文书
住房抵押登记委托书
2014/09/27 职场文书
spring cloud 配置中心客户端启动遇到的问题
2021/09/25 Java/Android