当前位置: 首页 > 图文教程 > 网络编程 > AJAX技术 > 利用Ajax传递Xml文档

AJAX技术
ajax poller
无框架 Ajax分页(原创)
AJAX 图片展示框架56个 提升开发效率
AJAX 客户端响应速度提高分析
揭开AJAX神秘的面纱(AJAX个人学习笔记)
Ajax Control Toolkit 34个服务器端控件
Ajax 核心框架函数及例子
AJAX 进度条实现代码
Unobtrusive的Web开发
ASP实例:ASP+AJAX制作无刷新新闻评论系统
Ajax和CSS设计的表格实例
css和Ajax制作的表格
AJAX结合CSS实现的网页Tab选项卡效果
实现一个基于Ajax的调查程序
ASP.NET+AJAX解决网页打开等待问题
XMLHttpRequest和AJAX虎视Web应用开发
IBM Google等巨头联手支持Open Ajax计划
php+ajax文件上传进度条
AJAX技术 vs 传统的ASP无刷新技术
利用ICallbackEventHandle实现类似AJAX的无刷新页面

AJAX技术 中的 利用Ajax传递Xml文档


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 82 ::
收藏到网摘: n/a

 
客户端
<script language="javascript">
//生成XML文件 
function GetAllFormData() 

    var strXML = "<Client>\r\n<FormData>\r\n"; 
    strXML += "<UserName>bccu</UserName>"
    strXML += "<Age>25</Age>"; 
    strXML += "</FormData>\r\n</Client>"
    return strXML; 

 
///向服務器发送XML文档 
function Send(Str,URL)  

    var Http = new ActiveXObject("Microsoft.XMLHTTP") 
    Http.open("POST",URL,false) 
    Http.send(Str) 
    return Http.responseText; 

 
///获得XML中指定的节的值 
function GetXMLNodeValue(strXML,nodeName) 

    var Dom = new ActiveXObject("Microsoft.XMLDOM") 
    Dom.async=false  
    Dom.loadXML(strXML) 
    if(Dom.parseError.errorCode != 0)  
    { 
        delete(Dom) 
        return(false) 
    } 
    else 
    { 
        var node = Dom.documentElement.selectSingleNode("//"+nodeName); 
        if(node) 
            nodeValue = node.text; 
        delete(Dom) 
        return(nodeValue); 
    } 

 function Test() 
 { 
    var tmp       = Send(GetAllFormData(),"./test.aspx"); 
    var name      = GetXMLNodeValue(tmp,"UserName"); 
    var password  = GetXMLNodeValue(tmp,"Age"); 
 } 
</script>

服务器端(test.cs)
System.IO.Stream stream = Request.InputStream
System.Xml.XmlDocument doc = new XmlDocument(); 
try 

  doc.Load(stream); //加载发送过来的Xml文档

catch 

  byte[] buffer = new byte[stream.Length]; 
  stream.Read(buffer,0,buffer.Length); 
  string strXML = System.Text.UnicodeEncoding.Default.GetString(buffer,0,buffer.Length); 
  doc.LoadXml(strXML); 

//将doc处理后输出以便返回到客户端(此处省略)

response.write("")