0
点赞
收藏
分享

微信扫一扫

Ajax使用流程


1:初始化XMLHttpRequest,这一步要考虑跨浏览器的问题。对于较早版本的IE来说,并不支持ActiveXObjice类,因此需要对浏览器进行判别。
2:设置XMLHttpRequest对象的onReadyStateChange属性,指定服务器返回响应数据时要调用的回调函数,即指
定响应处理函数。
3:调用XMLHttpRequest对象的open方法,创建http请求。
4:调用XMLHttpRequest对象的setResouceHeader等方法,设置必要的http请求头信息。
5:调用XMLHttpRequest对象的send方法,发送之前创建的http请求。
6:根据XMLHttpRequest对象的open方法参数,决定等待或者不等待服务器回响应数据。如果服务器返回响应数据
,则将控制权交给之前设置回调函数。


示例:


function
send_request()

{

//
创建XMLHttpRequest;

//javascript
是一个弱类型语言,因此变量http_request可以不声明,直接使用

false;

if(window.XMLHttpRequest)

{

//
 不支持Window。XMLHttpRequest对象,即是非IE浏览器

new XMLHttpRequest(); //
实例化一个对象



}

else if(window.ActiveXObject)

{

//IE
浏览器

try

{

new ActiveXObject("Msxml2.XMLHTTP");//
较新版本的IE

catch(e)

{

try

{

new ActiveXOBject("Microsoft.XMLHTTP");//
旧版本IE

catch(e)

{



window.alert(e.description);

}

}

}

else

{

"
不能创建 XMLHttpRequest对象,无法应用Ajax"
);

return false;

}

//
指定回调函数

//
相应服务器的异步请求

//
创建HTTP请求

"get","Handler.ashx?flag=addAdmin&userName="+document.getElementById("txtUserName").value,true);

//Handler.ashx
是事件处理函数,注意值的传递方式。


//
发送上面创建的HTTP请求

null);

}

function

{

if(http_request.readyState == 4)//
发送成功

{

if(http_request.status == 200)//
返回状态成功

{

//
正式处理有信息

if(http_request.responseText == "
用户名已经被注册"
)

{

//
隐藏提交按扭

"btnCommit").style.display ="none";
//javascript
对于文档类的取出方法,都是docement.getElementById(“objectID“)

}

else

{

"btnCommit").style.display="";

}



"lblShow").innerText=http_request.responseText;

}

}

}


 

举报

相关推荐

0 条评论