作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们可以创建 XMLHttpRequest 对象,然后可以将其用于另一个请求,例如:-
var xhr = new XMLHttpRequest();
xhr.open("GET", url, true);
xhr.onreadystatechange = function(){ } // something
xhr.send(null);
将会有一个搜索框,当我们在其中输入内容时,它会发送一个 ajax 请求,但如果用户输入更多内容,我们将取消之前的 ajax 请求并创建新的请求。
如果我们想通过同一个对象发送另一个ajax请求,我们可以为该搜索框创建一个xhr对象,以确保一次只有一个ajax请求,因此如果我们需要发送另一个请求,将喜欢:-
xhr.abort()
xhr.open()
xhr.send(null);
我使用 jQuery 来实现跨浏览器的可移植性,并且我想要与上面类似的东西,这意味着一个 XHR(或包装的 XHR)对象,它可以一次又一次地使用,也可以取消以前的请求。
我们如何在 jQuery 中做到这一点?
最佳答案
尝试使用函数返回 $.get()
、 .abort()
var current;
var request = function(url) {current = $.get(url); return current};
request(url); current.abort();
request(url).then(function(data) {
// do stuff
}, function err(jqxhr, textStatus, errorThrown) {
// do stuff with error
});
关于javascript - 如何在 jquery 中获取 XMLHttpRequest 对象,以便稍后用于另一个请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34690719/
我是一名优秀的程序员,十分优秀!