您的位置:首页 > Web前端 > JavaScript

javascript异步过程

2016-02-02 21:14 696 查看
javascript异步过程

function createXMLHTTP() {  //创建一个XMLHTTPRequest对象(根据不同浏览器调用不同的方法)
var xmlHttp = false;
try {
if (window.XMLHttpRequest) {//针对FirFox,Mozilla,Opera,Safari,IE7,IE8
xmlHttp = new XMLHttpRequest();
} else if (window.ActiveXObject) {//通过实例化ActiveXObject的一个新实例来创建XMLHTTPRequest对象
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} else {
xmlHttp = null;
}
} catch (e) {
alert(e);
}
return xmlHttp;
}
var xmlReq = createXMLHTTP();//1、创建一个XMLHTTPRequest对象
function testAsynRequest() {
var datastr = document.getElementById("stuName").value; //2, 获取文本框的value
if (datastr.trim().length == 0) {
alert("请输入姓名"); return;
}
var url = "/Handlers/AsycnHandler.ashx?action="+datastr;
xmlReq.open("post", url, true);// 3, 设置连接信息
xmlReq.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlReq.send(null);//4,发送请求
xmlReq.onreadystatechange = function () {
if (xmlReq.readyState == 4) {//判断对象状态
if (xmlReq.status == 200) {//判断http交互是否成功
var jsonDate = eval('(' + xmlReq.responseText + ')');
document.getElementsByTagName('p')[0].innerHTML = jsonDate.message;
//alert(jsonDate.message);
}
else if (xmlReq.status == 400) {
alert("Request URL is not found.");
} else if (xmlReq.status == 403) {
alert("Access denied.");
} else {
alert("status is" + xmlReq.status);
}
}
};

}


接收文件AsycnHandler.ashx

public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
string action ="我是异步返回的:"+ context.Request["action"]+" 你成功了";
// Thread.Sleep(1000);
string jsonObject = "{\"message\":\"" + action + "\"}";
context.Response.Write(jsonObject);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: