码迷,mamicode.com
首页 > Web开发 > 详细

使用Ajax发送异步请求的步骤

时间:2015-07-18 15:27:28      阅读:253      评论:0      收藏:0      [点我收藏+]

标签:

1.获取Ajax对象:获取XMLHttpRequest对象实例

function getXhr(){
    var xhr = null;
    if(window.XMLHttpRequest){
        xhr = new XMLHttpRequest();//非IE浏览器
    }else{
        xhr = new ActiveXObject(‘Microsoft.XMLHttp‘);//IE浏览器
    }
    return xhr;
}

 

2.设置回调函数:为Ajax对象的readystatechange事件设定响应函数

xhr.onreadystatechange = function(){
    if(xhr.readyState == 4 && xhhr.status == 200){
        var txt = xhr.responseText;
        //DOM操作
    }
}

 

3.创建请求:调用XMLHttpRequest对象的open方法

 

  3.1创建请求-GET请求

xhr.open(‘get‘,‘*.do‘,true);

  注意:

  true:表示发送异步请求(当Ajax对象发送请求时,用户仍然可以对当前页面做其他操作)

  false:表示发送同步请求(当Ajax对象发送请求时,浏览器会锁定当前页面,用户不可以对当前页面做其他操作)

 

  3.2创建请求-POST请求

xhr.open(‘post‘,‘*.do‘,true);
xhr.setRequestHeader(‘content-type‘,‘application/x-www-form-urlencoded‘);
 注意:
 setRequestHeader的作用:因为HTTP协议要求发送post请求时,必须有content-type消息头
 但是默认情况下xhr(即Ajax对象)不会添加该消息头,所以,需要调用setRequestHeader方 法,添加这个消息头

4.调用Ajax对象的send方法

GET    请求:xhr.send(null);

POST    请求:xhr.send(name1=value1 & name2=value2);

GET请求:

-send方法内传递null

-若要提交数据,则在open方法的"URL"后面追加

-如:xhr.open(‘get‘,‘xx.do?name1=value1&name2=value2‘,true);

 

使用Ajax发送异步请求的步骤

标签:

原文地址:http://www.cnblogs.com/ecoo/p/4656754.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!