首页 > 编程 > ASP > 正文

利用Ajax传递Xml文档

2024-05-04 11:09:26
字体:
来源:转载
供稿:网友
客户端 

<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("") 
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表