通过Ajax客户服务器通讯的例子

功能描述:1 客户端向服务器端发送消息;

                    2 服务器端接受消息,验证;

                    3 服务器端返回结果给客户端;

                    4 客户端相应服务器返回结果。

HTML代码:

<form id="Form1" method="post" runat="server">

input type="button" value="Button" οnclick="Request()">

</form>
JS代码:
function Request()

{   

		if(window.XMLHttpRequest)  

			{ 

			 var xmlObj = new XMLHttpRequest();   

			}   

		else  

			{     

			var MSXML =['Microsoft.XMLHTTP','MSXML2.XMLHTTP.5.0', 'MSXML2.XMLHTTP.4.0','MSXML2.XMLHTTP.3.0','MSXML2.XMLHTTP']; 

			for(var n = 0; n < MSXML.length; n++)    

			{       

				try       

				{        

					var xmlObj = new ActiveXObject(MSXML[n]);         

					break;      

				}      

				catch(e)      

				{}    

				}   

			}   

		xmlObj.open("POST","Test.aspx?IsAjaxRequest=true",true);    

		xmlObj.send("CTidea AJAX Temple Testwww.ctidea.com"); 

		//要发送的能容,自己定好了  

		xmlObj.onreadystatechange = function ()  

		{      

			if (xmlObj.readyState == 4)     

			{       

				if(xmlObj.status == 200 || xmlObj.status == 304)      

				{

				 alert("nihao");        

				 alert(xmlObj.responseText);       

				}       

				else       

				{        

				alert("Error loading page/n"+ xmlObj.status +":"+ xmlObj.statusText);       

				}    

			}   

		} 

}
 
Asp.net 的服务器端代码:
		private void Page_Load(object sender, System.EventArgs e)

		{

			  if(Request.QueryString["IsAjaxRequest"] != null)

				  //用于判断是不是客户端的XMLHttp请求  

			  {    

				  //string c = Request.QueryString["IsAjaxRequest"] ;

				  Response.Clear();   

				  byte[] myBytes = new byte[Request.ContentLength];   

				  Request.InputStream.Read(myBytes,0,Request.ContentLength);

				  //string d=  Request.ContentEncoding.GetString(myBytes,0,Request.ContentLength);

				  //Response.Write(Request.ContentEncoding.GetString(myBytes,0,Request.ContentLength)); 

				  Response.Write("dajiahao");	

				  Response.End();    

				  Response.Close();  

			  }

		}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值