您的位置:首页 > 其它

传统方式实现AJAX异步获取数据,局部刷新

2013-07-11 21:34 696 查看
1.在ASP.NET项目中创建一个Web Form,命名为AJAXTest1.aspx,并在其中加入两个控件,如下:

<form id="form1" runat="server">

<input type="text" id="showDate" runat="server"/>

<input type="button" id="btn" onclick="btnClick()" value="局部刷新" runat="server"/>

</form>

2.添加如下JS代码:

<script type="text/javascript">

function btnClick() {

var xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); //创建xmlhttp对象

if (!xmlHttp) {

alert("创建xmlhttp异常!");

return;

}

xmlHttp.open("POST", "GetDate.ashx", true); //准备向服务器的GetDate.ashx发送post请求

//xmlhttp是异步请求,监听onreadystatechange事件

xmlHttp.onreadystatechange = function () {

if (xmlHttp.readyState == 4) {

if (xmlHttp.status == 200) { //状态码为200,表示成功

//alert(xmlHttp.responseText);

document.getElementById("showDate").value = xmlHttp.responseText; //获取服务器返回的文本

}

else {

alert("AJAX服务器返回错误!");

}

}

}

xmlHttp.send(null); //向服务器发送请求

}

</script>

3.创建一个Generic Handler文件,命名为GetDate.ashx,然后添加回传代码:

public void ProcessRequest(HttpContext context)

{

context.Response.ContentType = "text/plain";

context.Response.Write(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));注:仅添了此行代码

}

4.用IE浏览器浏览AJAXTest1.aspx,效果图如下:



5.用HttpWatch Professional 查看服务器传回的内容如下图所示:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: