Ajax

1:ajax的简单说明:
  ajax :异步传输,主要是对javascript的操作,其核心类是XMLHttpRequest.这个类已经存在于各游览器中!
2:xmlhttprequest 在不同游览器中的创建方式:
  IE:  var xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
  其他: var xmlHttp=new XMLHttpRequest();
  在这里补充个小知识,如何判断客户用的是什么游览器,在javascript中判断:
    if(window.ActiveXObject)
      var xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    else if(window.XMLHTTPRequest)
      var xmlHttp=new XMLHttpRequest();
3:ajax的使用
 a:初始化request,b:打开连接,c:发送请求,d:接收
       var req;   
function init()
{
  req=new ActiveXObject("Microsoft.XMLHTTP"); //初始化req
}
function mySend(method,url)

  req.onreadystatechange=method;//指定回调函数,在请求结束后调用
  req.open("post",url);//打开连接
  req.send(null);//发送请求
}
function pwdBlur()
{
init();
var pwdVal=document.frm.pwd.value;
//url是个servlet的url重写,也可以是html,text
servlet返回out中的东西,别的返回内容
mySend(pwdPro,"servlet/AllPro?pwd="+pwdVal);  
  }
  function pwdPro()
  {
if(req.readystate==4){ //4为请求发送完成
if(req.status==200)//200为返回完成,404为not find
{
   //接收返回值,这个值存在于servlet的out.print中
  var msg=req.responseText;
  pwdError.innerText=msg;//给层加文字
  }
 }
}
要注意的是,在servlet中,要加入两条
response.setHeader("cache-control","no-cache");//不缓冲
response.setContext("text/xml;encoding=gbk");//不是文本要用Application/xml

你可能感兴趣的:(Ajax)