进来看看,谷狗浏览器下ajax的一些问题
时间:2011-08-16
来源:互联网
RT,附上代码先
JScript code
谷狗浏览器下刷新的时候,会直接运行到Login_step这个函数的xmlReq.onreadystatechange 的这一步,也就是说前面的alert(1)等都不会执行,直接报动态页面出错了。打印alert(xmlReq.status)为0.在IE和FF都正常,请问是什么原因?该如何修改!
在线等解答
JScript code
function login_step(step) { alert(step); if(window.XMLHttpRequest) { var xmlReq = new XMLHttpRequest(); alert(1); } else if(window.ActiveXObject) { var xmlReq = new ActiveXObject('Microsoft.XMLHTTP'); alert(2); } alert(2.5); var URL="login_step.php?step="+step+"&pid="+pid+"&s_time="+s_time+"&id_lonstep="+id_lonstep+"&falshversion="+falshversion+"&sid="+new Date().getTime(); alert(URL); xmlReq.onreadystatechange = function() { alert(xmlReq.status); if(xmlReq.readyState == 4) { if(xmlReq.status==200) { } else { alert(URL); alert('动态页2面出错\n\n'+xmlReq.responseText+step);//如果状态不是200,输出错误看看 } } } xmlReq.open("GET", URL, true); xmlReq.send(null); return false; } window.onunload=function() { login_step("close"); }
谷狗浏览器下刷新的时候,会直接运行到Login_step这个函数的xmlReq.onreadystatechange 的这一步,也就是说前面的alert(1)等都不会执行,直接报动态页面出错了。打印alert(xmlReq.status)为0.在IE和FF都正常,请问是什么原因?该如何修改!
在线等解答
作者: hxm19881010 发布时间: 2011-08-16
你URL弄成最短的“login_step.php”看能不能请求到。
另外确定下是否跨域了。
另外确定下是否跨域了。
作者: KongHuLu 发布时间: 2011-08-16
没有跨域。IE和FF下均正常~!
改成啥都不行。上面一截我打了很多输出,根本不执行。。
改成啥都不行。上面一截我打了很多输出,根本不执行。。
作者: hxm19881010 发布时间: 2011-08-16
引用 2 楼 hxm19881010 的回复:
没有跨域。IE和FF下均正常~!
改成啥都不行。上面一截我打了很多输出,根本不执行。。
没有跨域。IE和FF下均正常~!
改成啥都不行。上面一截我打了很多输出,根本不执行。。
JScript code
function login_step(step) { var xmlReq = null; alert(step); if(window.XMLHttpRequest) { xmlReq = new XMLHttpRequest(); alert(1); } else if(window.ActiveXObject) { xmlReq = new ActiveXObject('Microsoft.XMLHTTP'); alert(2); } alert(2.5); var URL="login_step.php?step="+step+"&pid="+pid+"&s_time="+s_time+"&id_lonstep="+id_lonstep+"&falshversion="+falshversion+"&sid="+new Date().getTime(); alert(URL); xmlReq.onreadystatechange = function() { alert(xmlReq.status); if(xmlReq.readyState == 4) { if(xmlReq.status==200) { } else { alert(URL); alert('动态页2面出错\n\n'+xmlReq.responseText+step);//如果状态不是200,输出错误看看 } } } xmlReq.open("GET", URL, true); xmlReq.send(null); return false; } window.onunload=function() { login_step("close"); }
作者: MuBeiBei 发布时间: 2011-08-16
不行啊。。。汗!还是直接执行到下面xmlReq.onreadystatechange 这里了!!
为什么?
为什么?
作者: hxm19881010 发布时间: 2011-08-16
ajax是异步的,有可能没执行完onreadystatechange的4个状态xhr对象都被卸载了。
改成同步的
JScript code
改成同步的
JScript code
xmlReq.open("GET", URL, false);
作者: showbo 发布时间: 2011-08-16
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28