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

代码如下:

$.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;
        }
    }

}

(0)

相关推荐

  • jquery ajax同步异步的执行最终解决方案

    大家先看一段简单的jquery ajax 返回值的js 代码 复制代码 代码如下: function getReturnAjax{ $.ajax({ type:"POST", http://www.cnblogs.com/wlmemail/admin/%22ajax/userexist.aspx", data:"username="+vusername.value, success:function(msg){ if(msg=="ok"

  • Ajax请求中的异步与同步,需要注意的地方说明

    之前做项目时候,用到一个表格控件,它的数据是异步加载的,我在这个表格绑定数据的函数下面友做了一些业务处理,运行页面的时候,用浏览器在我写业务处理那地方打上断点跟踪,它确实执行了,可以最后显示的时候,它的处理被覆盖了,我很纳闷,当时也知道是这个表格绑定函数那出问题了,可是时间紧,它的函数是封装的,没有去具体跟踪,就直接让我的那部分业务处理延迟200ms执行,这样就好了,这是个笨法,不过也是个有效的办法,呵呵. 后来看了下文档,查了些资料,其实原理应该是这样的: 默认设置下,所有请求均为异步请求.如

  • ajax 同步请求和异步请求的差异分析

    ajax同步和异步的差异, 先看2段代码: 代码一: 复制代码 代码如下: Synchronize = function(url,param) { function createXhrObject() { var http; var activeX = [ "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP" ]; try { http = new XMLHttpRequest;

  • AJAX下的请求方式以及同步异步的区别小结

    请求方式,分为GET与POST: GET 最为常见的HTTP请求,普通上网浏览页面就是GET.GET方式的参数请求直接跟在URL后,以问号开始.(JS中用window.location.search获得).参数可以用encodeURIComponent进行编码,使用方式: var EnParam = encodeURIComponent(param); URL只支持大约2K的长度,即2048字符数:使用GET进行AJAX请求时候会缓存导致出现的页面不是正确的,一般方法加random参数值:aja

  • jquery ajax属性async(同步异步)示例

    例1.jquery+ajax/" target="_blank">jquery ajax同步方式 复制代码 代码如下: $.ajax({url : 'test.php',type : 'post',async: false,//使用同步的方式,true为异步方式data : {'act':'addvideo', 'videoname':videoname},//这里使用json对象success : function(data){//code here...},fail

  • jquery的ajax同步和异步的理解及示例

    之前一直在写JQUERY代码的时候遇到AJAX加载数据都需要考虑代码运行顺序问题.最近的项目用了到AJAX同步.这个同步的意思是当JS代码加载到当前AJAX的时候会把页面里所有的代码停止加载,页面出去假死状态,当这个AJAX执行完毕后才会继续运行其他代码页面假死状态解除. 而异步则这个AJAX代码运行中的时候其他代码一样可以运行. jquery的async:false,这个属性 默认是true:异步,false:同步. 复制代码 代码如下: $.ajax({ type: "post",

  • jquery ajax 同步异步的执行示例代码

    大家先看一段简单的jquery ajax 返回值的js 代码 复制代码 代码如下: function getReturnAjax{ $.ajax({ type:"POST", http://www.jb51.net/userexist.aspx", data:"username="+vusername.value, success:function(msg){ if(msg=="ok"){ showtipex(vusername.id,

  • jquery ajax 同步异步的执行 return值不能取得的解决方案

    大家先看一段简单的jquery ajax 返回值的js 代码 复制代码 代码如下: function getReturnAjax{ $.ajax({ type:"POST", data:"username="+vusername.value, success:function(msg){ if(msg=="ok"){ showtipex(vusername.id,"<img src='images/ok.gif'/><

  • Ajax同步和异步问题浅析及解决方法

    通过ajax向后台发送和接收数据时,常常会出现同步异步问题.由于ajax是默认异步加载的,但有时候需要同步或者同步的效果,有以下两种解决方案. 方案一:将某些方法放在回调函数中执行,即,等到从后台返回成功后再执行. 例: $.getJSON("/data-access/sens-config/IPandPortSel",{},function(resp){ if(resp.code==0){ $.each(resp.data,function(i,obj){ option_net_ty

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

    复制代码 代码如下: $.ajax({                async: true, // 默认true(异步请求)                cache: true, // 默认true,设置为 false 将不会从浏览器缓存中加载请求信息.                type: "POST", // 默认:GET 请求方式:[POST/GET]                dataType: "xml", //默认["xml&quo

  • jQuery ajax中使用confirm,确认是否删除的简单实例

    jQuery ajax 中使用confirm ,确认是否删除按钮 onclick="return confirm('确认删除?');" <script type="text/javascript"> $(function(){ $("#btnDelete").click(function(){ //var user8ID = $.trim( $('#user8ID').val() ); var statu = confirm(&quo

  • 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

  • C#同步和异步调用方法实例

    复制代码 代码如下: namespace ConsoleTest{    class Program    {        static void Main(string[] args)        {            Console.WriteLine("********同步调用开始**********");            int result = Add(1,2);            Console.WriteLine("同步调用完毕,执行结果为:&

  • JQuery解析XML数据的几个简单实例

    用JavaScript解析XML数据是常见的编程任务,JavaScript能做的,JQuery当然也能做.下面我们来总结几个使用JQuery解析XML的例子. 第一种方案: <script type="text/javascript"> $(document).ready(function() { $.ajax({ url: 'http://www.jb51.net/cgi/test.xml', dataType: 'xml', success: function(data

  • jQuery Ajax 加载数据时异步显示加载动画

    ajax加载后台数据就不说的那么细了. 看下面代码首先前台上放置代码 <div id="loadgif" style="width:66px;height:66px;position:absolute;top:50%;left:50%;"> <img alt="加载中..." src="../../Images/loading1.gif"/> </div> 在js脚本文件中首先把这个图片动画

  • jQuery+ajax读取json数据并按照价格排序示例

    本文实例讲述了jQuery+ajax读取json数据并按照价格排序.分享给大家供大家参考,具体如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script src="jquery-1.9.1.js"></script> <script> $.ajax({ url

  • 详解使用Vue.Js结合Jquery Ajax加载数据的两种方式

    整理文档,搜刮出一个使用Vue.Js结合Jquery Ajax加载数据的两种方式的代码,稍微整理精简一下做下分享. 废话不多说,直接上代码 html代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>demo</title> <script src="js/jquery.js"

  • SQL Server解析XML数据的方法详解

    本文实例讲述了SQL Server解析XML数据的方法.分享给大家供大家参考,具体如下: --5.读取XML --下面为多种方法从XML中读取EMAIL DECLARE @x XML SELECT @x = ' <People> <dongsheng> <Info Name="Email">dongsheng@xxyy.com</Info> <Info Name="Phone">678945546</

  • jQuery+Ajax请求本地数据加载商品列表页并跳转详情页的实现方法

    效果: json文件: { "books":[ {"id":1,"imgUrl":"images/ly.jpg","price":"45.00","title":"论语","publish":"人民文学出版社","num":"303","desc":

随机推荐