onreadystatechange 方法为何多次调用

youbokuang 2006-10-24 12:37:31

xmlHTTP.onreadystatechange = handleStateChange;


function handleStateChange() {

if( xmlHTTP.readyState == 4 ) {
if( xmlHTTP.status == 200 ) {
var rebuf = xmlHTTP.responseText;
if( "success" == rebuf ) {
var rowNum = document.all.bgid.value.substring(2);
alert( rowNum );
}
else {
alert(rebuf);
}

}
else if( xmlHTTP.status == 404 ) {
alert("访问的URL没有找到。");
}
xmlHTTP.abort();

}
}

为何返回的值要连续弹出来 5 次, 我的个天,我只提交了一次,后台也只处理了一次,但返回来的东西就是要弹出 5 次来。

为何故???

...全文
320 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Hao粑粑爱生活 2006-11-22
  • 打赏
  • 举报
回复
怀疑跟你提交表单的方式有关,但是最多也就是提交两次啊,怎么会5次那么多?
iohaitao 2006-11-21
  • 打赏
  • 举报
回复
都没有回答出问题所在啊????
程序中已经指明当if( xmlHTTP.readyState == 4 ) {的状态,才处理结果,可为什么打印了5次呢?

我在ie6.0下没有问题,但ir5.0下出现该问题:
当以同步返回结果时,
客户端能够捕获状态改变,但状态readyState值,却每次变化都是4
懒得去死 2006-11-14
  • 打赏
  • 举报
回复
HTTP发出请求的时候会有5种状态.0、1、2、3、4,客户端接受每个状态
xxbbww 2006-11-13
  • 打赏
  • 举报
回复
顶起来!
Eilien 2006-10-28
  • 打赏
  • 举报
回复
楼上正解。XMLHTTPREQUES会返回各种不同的状态,客户端接受每个状态。
terry52 2006-10-27
  • 打赏
  • 举报
回复
HTTP发出请求的时候会有5种状态.0、1、2、3、4
http://www.cnblogs.com/terry52/archive/2006/10/27/541478.html
郭大侠_ 2006-10-24
  • 打赏
  • 举报
回复
因为访问网页时 xmlHTTP.readyState 的值随着访问的过程在不断变化

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧