<%@ 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>
xmlHttp.onreadystatechange() = function() {
這行寫錯了,先修正再測,修正如下
xmlHttp.onreadystatechange = function() {
你用switch 處理xmlHttp.readyState
只會觸發一次,所以得到的都是第一個狀態
如果要持續監測xmlHttp.readyState
至少要設個定時器,或用callback 方法
@RosonJ: 这个我就是调试用的,看他到哪个状态了。不是要特地把所有状态都显示出来。
算是解决了一半了吧,最后他点击跳出来一个undefined。我路径没错,而且那个页面也是有东西的
@Myblog、java:
我沒看到處理結果的代碼,console.log 出來看看吧
现在还有写原生的ajax请求吗?
入门中,不管那么多。能解决掉管他原生不原生。能看出我哪里出问题了么
@Myblog、java: 园子里面的博客很多的,看看这个 https://www.cnblogs.com/yxpblog/p/4231681.html