这个事件是怎么触发的?

来源:2-7 利用Ajax实现新闻列表

电磁护盾

2020-02-21 23:26:04

鼠标事件 键盘事件 表单事件  文档/窗口事件,之前这些事件触发的情况比较好理解,

但是xmlhttp.onreadystatechange=function(){}这个事件是怎么触发的?

写回答

2回答

好帮手慕小班

2020-02-22

同学你好,Ajax在发送过程中readyState一定会有状态变化。

onreadystatechange 事件,是当请求被发送到服务器时,我们需要执行一些基于响应的任务。

    每当 readyState 改变时,就会触发 onreadystatechange 事件。readyState 属性存有 XMLHttpRequest 的状态信息。XMLHttpRequest 对象的属性:

readyState:存有 XMLHttpRequest 的状态。从 0 到 4 发生变化。

    0: 请求未初始化
    1: 服务器连接已建立
    2: 请求已接收
    3: 请求处理中
    4: 请求已完成,且响应已就绪
status:
    200: "OK"
    404: 未找到页面

在onreadystatechange 中就可以判断 readyState 等于 4 且状态为 200 时,表示响应已就绪,就可以执行对应的任务。

http://img1.sycdn.imooc.com/climg/5e509dae09e1aa6809110147.jpg

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

0

电磁护盾

提问者

2020-02-21

视频里说“Ajax在发送过程中各个状态发生变化的时候,就会触发这个事件”,

那么,Ajax在发送过程中一定会有状态变化是吗?是不是只要发送Ajax请求,就一定会触发这个事件?

0

0 学习 · 9666 问题

查看课程