利用Ajax传递Xml文档

(编辑:jimmy 日期: 2024/10/5 浏览:2)

客户端

<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("")
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。