Ajax学习笔记

Ajax技术中的xmlhttp.send()方法提供我们传送大量数据的功能,要使用该功能,首先要将要传到服务端的数据封装在一个xml对象中,在将这个xml对象的xml属性做为send()方法的参数就可以:
var guidArray = guidlist.split( " , " );
var xmlDom = new ActiveXObject( " MSXML2.DOMDocument " );
xmlDom.loadXML( "" );
var domRoot = xmlDom.createElement( " NewDataSet " );

xmlDom.appendChild(domRoot);
for ( var i = 0 ; i < guidArray.length; i ++ )
{
var node = xmlDom.createElement( " guid " );
node.text = guidArray [i] ;
domRoot.appendChild(node);
}

var xmlhttp = new ActiveXObject( " MSXML2.XMLHTTP " );

xmlhttp.onreadystatechange = function (){
if (xmlhttp.readyState == 4 )
{
if (xmlhttp.status == 200 )
{
alert( " 处理完成 " );
}
else
{
alert(xmlhttp.responseText);
}
}

}

xmlhttp.Open( " POST " , " fmSmsPostProcess.aspx?sStatus= " + escape(sStatus) + " &sProcessResult= " + escape(document.getElementById( " btProcessResult " ).value) +
" &sReStore= " + escape(document.getElementById( " btReStore " ).value), true );

xmlhttp.setRequestHeader( " Content-Type " , " text/xml " );
xmlhttp.send(xmlDom.xml);

服务端需要从请求流中,解析出客户端传入的xml的内容,服务端代码:

System.IO.Stream instream = Page.Request.InputStream;
BinaryReader br = new BinaryReader(instream,System.Text.Encoding.UTF8);
byte[] byt = br.ReadBytes((int)instream.Length);
string sXml = System.Text.Encoding.UTF8.GetString(byt);

System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument();
xmlDoc.LoadXml(sXml);

XmlElement xe= xmlDoc.DocumentElement ;
for(int i=0 ; i< xe.ChildNodes.Count ; i++)
{
sGuid = sGuid + ",'" + xe.ChildNodes[i].InnerText+"'";
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值