最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

浅谈jQuery异步对象(XMLHttpRequest)_javascript技巧

来源:动视网 责编:小采 时间:2020-11-27 21:29:01
文档

浅谈jQuery异步对象(XMLHttpRequest)_javascript技巧

浅谈jQuery异步对象(XMLHttpRequest)_javascript技巧:我们先来看看异步对象五部曲 这是post请求的、 代码如下: //1.00创建异步对象 var xhr = new XMLHttpRequest(); //2.0 xhr.open(post, url,params, true); //3.0将参数使用Formdata属性传递 xhr.setRequestHeader(C
推荐度:
导读浅谈jQuery异步对象(XMLHttpRequest)_javascript技巧:我们先来看看异步对象五部曲 这是post请求的、 代码如下: //1.00创建异步对象 var xhr = new XMLHttpRequest(); //2.0 xhr.open(post, url,params, true); //3.0将参数使用Formdata属性传递 xhr.setRequestHeader(C


我们先来看看异步对象五部曲

这是post请求的、

代码如下:
//1.00创建异步对象
var xhr = new XMLHttpRequest();
//2.0
xhr.open("post", url,params, true);
//3.0将参数使用Formdata属性传递
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
//4.0设置回调函数
xhr.onreadystatechange = function () {
if (xhr.readyState == 4 && xhr.status == 200) {
alert(xhr.responseText);
}
}
//5.0传递参数
xhr.send(params);

结合get请求做一个异步对象的封装

get 请求中的

xhr.setRequestHeader("If-Modified-Since", "0"); 是为了清除缓存

而post请求的

代码如下:
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

是为了传输方式

中的type可以得到三种方式,其中包括application/x-www-form-urlencoded

代码如下:
var ajaxHelp = {
CreatXHR: function () {
//创建异步对象
var xhr = new XMLHttpRequest();
return xhr;
},
//ajax的get请求
AjaxGet: function (url, callBack) {
this.AJaxCommon("get", url, null, callBack);
},
//ajax的post请求
AjaxPost: function (url, params, callBack) {
this.AJaxCommon("post", url, params, callBack);
},
AJaxCommon: function (method, url, params, callBack) {
//1.0
var xhr = this.CreatXHR();
//2.0
xhr.open(method, url, true);
//3.0
if (method == "get") {
xhr.setRequestHeader("If-Modified-Since", "0");
} else {
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
}
//4.0
xhr.onreadystatechange = function () {
if (xhr.readyState == 4 && xhr.status == 200) {
var datas = JSON.parse(xhr.responseText);
//执行回调函数
callBack(datas);
}
}
//5.0
xhr.send(params);
}
};

ps:在JQuery里面是有$.ajax 和$.get / $.Post 等异步请求的方法的。以前的封装就不用了。额。好扯。其实他们底层也是这样的写的呢。JQuery就是为了解决各个浏览器的兼容性问题而已

文档

浅谈jQuery异步对象(XMLHttpRequest)_javascript技巧

浅谈jQuery异步对象(XMLHttpRequest)_javascript技巧:我们先来看看异步对象五部曲 这是post请求的、 代码如下: //1.00创建异步对象 var xhr = new XMLHttpRequest(); //2.0 xhr.open(post, url,params, true); //3.0将参数使用Formdata属性传递 xhr.setRequestHeader(C
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top