AJAX---onreadystatechange事件中获取相应内容
Posted jane_panyiyun
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AJAX---onreadystatechange事件中获取相应内容相关的知识,希望对你有一定的参考价值。
onreadystatechange事件中获取相应内容
// 如果需要捕获第一个状态的变化,需要注意代码执行顺序的问题(不要出现来不及的情况) xhr.onreadystatechange = function () { // 这个事件并不是只在响应时触发,状态改变就触发 // console.log(1) console.log(this.readyState) }
readystate状态
通过理解每一个状态值的含义得出一个结论:一般我们是在readyState值为4时,执行响应的后续逻辑
var xhr = new XMLHttpRequest() console.log(xhr.readyState) // => 0 // 初始化 请求代理对象
xhr.open(\'GET\', \'time.php\') console.log(xhr.readyState) // => 1 // open 方法已经调用,建立一个与服务端特定端口的连接
xhr.send()
xhr.addEventListener(\'readystatechange\', function () { switch (this.readyState) { case 2: // => 2 // 已经接受到了响应报文的响应头 // 可以拿到头 // console.log(this.getAllResponseHeaders()) console.log(this.getResponseHeader(\'server\')) // 但是还没有拿到体 console.log(this.responseText) break case 3: // => 3 // 正在下载响应报文的响应体,有可能响应体为空,也有可能不完整 // 在这里处理响应体不保险(不可靠) console.log(this.responseText) break case 4: // => 4 // 一切 OK (整个响应报文已经完整下载下来了) console.log(this.responseText) break }
以上是关于AJAX---onreadystatechange事件中获取相应内容的主要内容,如果未能解决你的问题,请参考以下文章