今天本来能很快的理解这Javascript的Ajax的写法的但是由于自己特二的直接采用页面没有使用服务器结果发布半天就没成功,还以为是自己写错了什么地方。Ajax只能是在服务器中实现的。
<html>
<head>
<script type="text/javascript" src="js/jquery.min.js">
</script>
<script type="text/javascript">
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","JSAjax2.html?t=" + Math.random(),true);
xmlhttp.send();
}
</script>
</head>
<body>
<h2>AJAX</h2>
<button type="button" οnclick="loadXMLDoc()">请求数据</button>
<div id="myDiv"></div>
<a href="JSAjax2.html"></a>
</body>
</html>
分析:xmlhttp.open("GET","JSAjax2.html?t=" + Math.random(),true);是因为get会产生缓存,即下一次执行代码会直接使用缓存中的数据,所以需要加个唯一的id t=" + Math.random();
存有 XMLHttpRequest 的状态。从 0 到 4 发生变化。
- 0: 请求未初始化
- 1: 服务器连接已建立
- 2: 请求已接收
- 3: 请求处理中
- 4: 请求已完成,且响应已就绪
200: "OK"
404: 未找到页面