XMLHttpRequest: readystatechange 事件
注意:此功能在Web Workers中可用,但Service Workers除外。
readystatechange
事件在readyState
属性的XMLHttpRequest
发生更改时触发。
警告:这不应该与同步请求一起使用,也不应该从原生代码中使用。
语法
在诸如addEventListener()
之类的办法中使用事件名称,或设置事件处理程序属性。
js
addEventListener("readystatechange", (event) => {});
onreadystatechange = (event) => {};
事件类型
一个通用的Event
,没有添加任何属性。
示例
js
const xhr = new XMLHttpRequest();
const method = "GET";
const url = "https://mdn.org.cn/";
xhr.open(method, url, true);
xhr.onreadystatechange = () => {
// In local files, status is 0 upon success in Mozilla Firefox
if (xhr.readyState === XMLHttpRequest.DONE) {
const status = xhr.status;
if (status === 0 || (status >= 200 && status < 400)) {
// The request has been completed successfully
console.log(xhr.responseText);
} else {
// Oh no! There has been an error with the request!
}
}
};
xhr.send();
规范
规范 |
---|
XMLHttpRequest 标准 # event-xhr-readystatechange |
XMLHttpRequest 标准 # handler-xhr-onreadystatechange |
浏览器兼容性
BCD 表格仅在浏览器中加载