readystate(readyState属性)
jquery ajax的readyState和status的区别和使用
readyState表示XMLHttpRequest对象的处理状态:
0:XMLHttpRequest对象还没有完成初始化。(准备司机、车、货物)
1:XMLHttpRequest对象开始发送请求。(需要送十车货物,当前正在送第几车)
2:XMLHttpRequest对象的请求发送完成。(十车货送完毕)
3:XMLHttpRequest对象开始读取服务器的响应。(准备把这十车加工的货拉回来,当前第几车)
4:XMLHttpRequest对象读取服务器响应结束。(十车货全部拉回完毕)
status状态:
1xx:信息响应类,表示接收到请求并且继续处理。(所有拉去的货,工厂还没有加工完毕)
2xx:处理成功响应类,表示动作被成功接收、理解和接受。。(所有拉去的货工厂全部加工完毕)
3xx:重定向响应类,为了完成指定的动作,必须接受进一步处理 。(所有拉去的货,工厂设备不够,让其他工厂帮忙加工)
4xx:客户端错误,客户请求包含语法错误或者是不能正确执行 。(这十车货有质量问题,工厂不能正常加工)
5xx:服务端错误,服务器不能正确执行一个正确的请求。(工厂在加工到一半过程中断电,不能继续加工)
jQuery Ajax的readyState和status的区别和使用详解
readyState是指ajax对象本身的状态,0表示尚未开始发送,1表示已发送,2表示已接收数据,3表示正在解析数据,4表示解析完成;
status则是网页服务器发给ajax的状态码,200表示网页是完全正常的,301表示网页是中途发生跳转的(也就是说收到的网页内容不是最初请求的那个网址的),著名的404则表示网页文件不存在,500则表示服务器发生错误,等等。
如果readyState等于4而且status等于200,则表示本次ajax请求是完全正确无误的。
ajax中的readyState的问题
不是很明白你的意思
Ajax readyState的五种状
0 - (未初始化)还没有调用send()方法
1 - (载入)已调用send()方法,正在发送请求
2 - (载入完成)send()方法执行完成,已经接收到全部响应内容
3 - (交互)正在解析响应内容
4 - (完成)响应内容解析完成,可以在客户端调用了
既然你都返回4了。表明已经返回成功了。你可以尝试在你的当前页面写
document.getElementById("abc").innerHTML = xmlhttp.responseText;
双引号的是你的一个id名称。比如有个div是id="abc"。
xmlhttp是XMLHttpRequest的一个对象。看看你调用了后你的页面有没有多出一些返回的文字什么的
xmlhttprequest对象的readystate与status的几种状态码 什么作用
XMLHttpRequest对象的readyState与status的几种状态码表示的意思:
readyState有五种状态:
0 (未初始化): (XMLHttpRequest)对象已经创建,但还没有调用open()方法;
1 (载入):已经调用open() 方法,但尚未发送请求;
2 (载入完成): 请求已经发送完成;
3 (交互):可以接收到部分响应数据;
4 (完成):已经接收到了全部数据,并且连接已经关闭。
status实际是一种辅状态判断,只是status更多是服务器方的状态判断。
关于status,由于它的状态有几十种,我只列出平时常用的几种:
1xx——信息类,表示收到Web浏览器请求,正在进一步的处理中。如,100:客户必须继续发出请求;101:客户要求服务器根据请求转换HTTP协议版本
2xx——成功,表示用户请求被正确接收,理解和处理。例如,200:OK;201:提示知道新文件的URL
3xx——重定向,表示请求没有成功,客户必须采取进一步的动作。如,300:请求的资源可在多处得到;301:删除请求数据
4xx——客户端错误,表示客户端提交的请求有错误。如,404:NOT Found,意味着请求中所引用的文档不存在。
5xx——服务器错误,表示服务器不能完成对请求的处理。如,500,服务器产生内部错误
readystate有几个状态
包含 5 种可能的值,对应常数表如下:
0 WebBrowserReadyState.UnInitialized(未初始化,默认): WebBrowser 对象已经创建,但不包含文档。
1 WebBrowserReadyState.Loading(载入):已经导航到新的文档,但尚未发送请求。
2 WebBrowserReadyState.Loaded(载入完成): 请求已经发送完成。
3 WebBrowserReadyState.Interactive(交互):可以接收到部分响应数据。
4 WebBrowserReadyState.Complete(完成):已经接收到了全部数据,并且连接已经关闭。
上面的常量是包含在 System.Windows.Forms 命名空间下的,这个命名空间是默认声明好的。
其实如果是判断网页是否加载完成,应该用 WebBrowser 的 DocumentCompleted 事件来判断。
用 ReadyState 也可以吧,加个 Timer 反复判断它的值就好。
IfWebBrowser1.ReadyState=4Then'4也可以写成WebBrowserReadyState.Complete
Msgbox("加载完毕")
EndIf