当前位置:编程学习 > C#/ASP.NET >>

ajax 返回XML,然后显示表格

意思大概是这样的。
我用ajax访问ashx文件,返回xml,xml格式如下:

<?xml version="1.0" encoding="gb2312"?>
<root>
  <head>
     <code>1</code>
     <message>数据下载成功</message>
     <rownum>1</rownum>
  </head>
  <body>
    <veh id="0">
      <lsh>1110917109123</lsh>
    </veh>
    <veh id="1">
       <lsh>1110917109124</lsh>
    </veh>
    <veh id="2">
       <lsh>1110917109125</lsh>
    </veh>
    <veh id="N">
       <lsh>N</lsh>
    </veh>
  </body>
</root>

我用DataSet加载xml,现在Gridview绑定DataSet
但是只显示
     <code>1</code>
     <message>数据下载成功</message>
     <rownum>1</rownum>
请问根据返回的xml如何制作成一个表格呢?
例如Gridview,可以显示几行的
新人分不多


--------------------编程问答-------------------- 你是想绑定body 的部分?

GridViewID.DataSource=DataSet.Tables[1].DefaultView; --------------------编程问答-------------------- 谢谢楼上的,绑定的问题解决了。
新问题如下:
前台ajax返回的是xml格式的数据。但是我要在后台用DataSet加载xml文件.
但是我不想把xml保存在本地,请问DataSet能加载ajax返回的数据吗? --------------------编程问答-------------------- --------------------编程问答-------------------- 我最终的目的是想把ajax返回的xml数据显示在girdview里。
--------------------编程问答-------------------- 有人能告诉下吗? --------------------编程问答-------------------- 不是告诉你了么 --------------------编程问答-------------------- 取得数据后在添加进你要添加的地方。
<script type="text/javascript">
    $(document).ready(function(){
        $.ajax({
            url:"Handler.ashx",
            type:"get",
            dataType:"xml",
            success:function(result){
                $(result).find("body>veh").each(function(i,v){
                    alert($(v).attr("id"))
                    alert($(v).children().eq(0).text())
                })
            }
        })
    })
</script>
    public void ProcessRequest (HttpContext context) {
        context.Response.ContentType = "text/xml";
        context.Response.Write(@"<?xml version=""1.0"" encoding=""gb2312""?>
<root>
  <head>
     <code>1</code>
     <message>数据下载成功</message>
     <rownum>1</rownum>
  </head>
  <body id=""a"">
    <veh id=""0"">
      <lsh>1110917109123</lsh>
    </veh>
    <veh id=""1"">
       <lsh>1110917109124</lsh>
    </veh>
    <veh id=""2"">
       <lsh>1110917109125</lsh>
    </veh>
    <veh id=""N"">
       <lsh>N</lsh>
    </veh>
  </body>
</root>");
        context.Response.End();
    }
--------------------编程问答-------------------- 谢谢楼上的啊 --------------------编程问答-------------------- 我不想用JQUERY来解析数据,我想用AJAX。
我在前台获得了XML数据,格式如下:

<root>
  <head>
     <code>1</code>
     <message>数据下载成功</message>
     <rownum>1</rownum>
  </head>
  <body>
    <veh id="0">
      <lsh>1110917109123</lsh>
    </veh>
    <veh id="1">
       <lsh>1110917109124</lsh>
    </veh>
    <veh id="2">
       <lsh>1110917109125</lsh>
    </veh>
    <veh id="N">
       <lsh>N</lsh>
    </veh>
  </body>
</root>

我现在想获得<veh id="0"> id中的值,还要获得<lsh>中的值。我用resonseXML.getElementsByTageName("veh"),获取不到,请问怎么获取啊? --------------------编程问答-------------------- 谁告诉下啊,求 --------------------编程问答-------------------- 返回的xml中不写

<?xml version="1.0" encoding="gb2312"?>
--------------------编程问答-------------------- 这种情况其实更建议用json --------------------编程问答-------------------- 用JS或者用JQuery其实是一样的,JQuery选择器还是挺方便的
$(xml).find("body > veh").each(function(){...}); --------------------编程问答-------------------- 你干嘛非要返回xml  在你访问的ajax页面全部处理好 在返回不可以嘛
--------------------编程问答-------------------- ajax方式填充GridView  

http://blog.csdn.net/sandy945/article/details/6925893
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,