javascript ajax

XMLHttpRequest 简介

要真正实现这种绚丽的奇迹,必须非常熟悉一个 JavaScript 对象,即 XMLHttpRequest。这个小小的对象实际上已经在几种浏览器中存在一段时间了,它是本专栏今后几个月中要介绍的 Web 2.0、Ajax 和大部分其他内容的核心。为了让您快速地大体了解它,下面给出将要用于该对象的很少的几个 方法和属性。

  • open():建立到服务器的新请求。
  • send():向服务器发送请求。
  • abort():退出当前请求。
  • readyState:提供当前 HTML 的就绪状态。
  • responseText:服务器返回的请求响应文本

例子:

var xmlHttpPost;
function createXMLHttpPost() {
if (window.ActiveXObject) {
xmlHttpPost
= new ActiveXObject("Microsoft.XMLHTTP");

}
else if (window.XMLHttpRequest) {
xmlHttpPost
= new XMLHttpRequest();
}
}

function postResult( tstr )
{
var url = "demo.php";
xmlHttpPost.open(
"POST", url, true);
xmlHttpPost.onreadystatechange
= onPostResult;
document.all.status.innerText
= "正在提交数据到服务器...";
xmlHttpPost.send( tstr );
}
  function onPostResult() {
        if(xmlHttpPost.readyState == 4) {
            if(xmlHttpPost.status == 200) {
                document.all.status.innerText = "提交完毕:" + xmlHttpPost.responseText; 
              location.reload(true);           
        }        
      }    
 }
  其中url中可以带参数例如:var url="demo.php?name=liyang";
  postResult中的tstr可以带参数例如:age=23&sex=man);也可是字符串;
  open有三个参数:type,url,true/false;
  当为true时则标明是异步请求,意思为提交服务器时,不等返回数据,直接执行下面代码,
  当为false时为同步请求,意思是提交服务器,只能等到返回数据后,才执行下面代码。。
  onreadystatechange指的是回调函数,
  

posted @ 2011-06-13 16:44  web流  阅读(296)  评论(0编辑  收藏  举报