首页 新闻 会员 周边

AJAX中readyState一直为0

0
[已解决问题] 解决于 2020-08-21 11:26

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>AJAX练习</title>
<script type="text/javascript">
function SetAJAX(){
var xmlHttp=false;
if(window.XMLHttpRequest){
xmlHttp=new XMLHttpRequest();//IE+7,chrome,firefox,Mozilla等浏览器
}
else if(window.ActiveXObject){
xmlHttp=new ActiveXObject("Microsoft.XMLHttp");//IE5,IE6浏览器创建对象方式
}
else{
window.alert("该浏览器不支持AJAX");
}
if(xmlHttp!=false){
xmlHttp.onreadystatechange()=function()
{ //document.writeln(xmlHttp.readyState);
if(xmlHttp.readyState4&&xmlHttp.status200){//&&xmlHttp.status==200
document.getElementById("info").innerHTML=xmlHttp.responeText;
}
}
xmlHttp.open("POST","hello.jsp",true);
xmlHttp.send();
switch (xmlHttp.readyState) {
case 0:
alert("对象已经建立,未初始化和调用open方法");
break;
case 1:
alert("已初始化,调用open方法后");
break;
case 2:
alert("已发送数据,调用send方法后");
break;
case 3:
alert("数据传输中状态,已经收到部分数据,但未全部完成");
break;
default:
alert("完成全部数据传输");
break;
}
}
else{alert("对象建立失败!!!");}
}
</script>
</head>
<body>
欢迎使用本系统<hr>
<button type="button" onclick="SetAJAX()">显示公司信息 </button>
<div id="info"></div>
</body>
</html>

doneday的主页 doneday | 菜鸟二级 | 园豆:206
提问于:2020-08-20 17:07
< >
分享
最佳答案
1
xmlHttp.onreadystatechange() = function() {

這行寫錯了,先修正再測,修正如下

xmlHttp.onreadystatechange = function() {
奖励园豆:5
RosonJ | 老鸟四级 |园豆:4910 | 2020-08-21 09:32

你用switch 處理xmlHttp.readyState
只會觸發一次,所以得到的都是第一個狀態
如果要持續監測xmlHttp.readyState
至少要設個定時器,或用callback 方法

RosonJ | 园豆:4910 (老鸟四级) | 2020-08-21 09:35

@RosonJ: 这个我就是调试用的,看他到哪个状态了。不是要特地把所有状态都显示出来。

doneday | 园豆:206 (菜鸟二级) | 2020-08-21 10:00

算是解决了一半了吧,最后他点击跳出来一个undefined。我路径没错,而且那个页面也是有东西的

doneday | 园豆:206 (菜鸟二级) | 2020-08-21 10:01

@Myblog、java:
我沒看到處理結果的代碼,console.log 出來看看吧

RosonJ | 园豆:4910 (老鸟四级) | 2020-08-21 10:06
其他回答(1)
0

现在还有写原生的ajax请求吗?

华临天下 | 园豆:1501 (小虾三级) | 2020-08-20 17:21

入门中,不管那么多。能解决掉管他原生不原生。能看出我哪里出问题了么

支持(0) 反对(0) doneday | 园豆:206 (菜鸟二级) | 2020-08-21 09:14

@Myblog、java: 园子里面的博客很多的,看看这个 https://www.cnblogs.com/yxpblog/p/4231681.html

支持(0) 反对(0) 华临天下 | 园豆:1501 (小虾三级) | 2020-08-21 09:31
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册