AJAX初探
来源:互联网 发布:linux at命令 编辑:程序博客网 时间:2024/04/29 12:15
AJAX 工作过程
###########################
# 1.创建一个 xmlhttp 对像,注:IE6、iE5 的创建方法不同
var xmlhttp=new XMLHttpRequest();
#################
# 2.指定 XMLHttpRequest 对像的 onreadstatechange 函数
xmlhttp.onreadystatechange=function()
{
//存有 XMLHttpRequest.readyState 的状态。从 0 到 4 发生变化。
// 0: 请求未初始化
// 1: 服务器连接已建立
// 2: 请求已接收
// 3: 请求处理中
// 4: 请求已完成,且响应已就绪
//XMLHttpRequest.status
//200: "OK"
//404: 未找到页面
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
###############
# 3.调用 open() 函数 指定方法,打开页面,是否异步
xmlhttp.open("GET","/jtest.html",true);
//AJAX 只能打开本站页面
##############
# 4.调用 send() 函数,发送请求
xmlhttp.send();
#############
# send() 方法调用后,每次xmlhttp.readyState值更改都会调用 onreadystatechange() 函数
# 当 readyState 值为4 ,则表示成功取得信息,并将返回信息保存到了 xmlhttp.responseText 变量中
示例代码:
<html>
<head>
<script type="text/javascript">
var myMess="";
function echoMess(str){
myMess = myMess + str +"</br>";
document.getElementById("myMess").innerHTML=myMess;
}
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()
{
echoMess("onreadystatechange 方法运行:readState="+xmlhttp.readyState);
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","jtest.html",true);
xmlhttp.send();
}
</script>
</head>
<body>
<h2>AJAX</h2>
<button type="button" onclick="loadXMLDoc()">请求数据</button>
<div id="myDiv"></div>
<hr>
<p>调试信息</p></br>
<div id="myMess">
</div>
<script type="text/javascript">
// echoMess("test");
</script>
</body>
</html>
- Ajax初探
- AJAX初探
- AJAX初探
- AJAX初探
- 初探AJAX
- ajax初探
- AJAX初探
- AJAX初探
- ajax 初探
- 初探Ajax
- ajax初探
- 初探Ajax
- ajax初探
- Ajax初探
- Ajax技术初探
- Ajax Tags标记初探
- AJAX技术初探
- AJAX In Google 初探
- linux中的jiffies变量
- TCP/IP传输层,你懂多少?
- Java路线参考
- Bug 2974637: MANY ORA-600[KKSSCL-INF-INL-LOOP] OCCUR AND CAN NOT CREATE NEW CONNECTION
- 驱动表选择
- AJAX初探
- 毕业设计所需资源
- C++ 重载赋值运算符
- QT中设置字体和更改字体颜色
- 关于桌面快捷方式的问题
- 帮助加盟商管理客户靠谱吗?
- Netbeans环境中使用RXTX
- 悲催的生活啊!
- C++中cout与指针问题