当前位置:编程学习 > JS >>

ajax是如何实现的,如何添加ajax控件

/*
  ajax类
  author:xqbar
ajax是如何实现的,如何添加ajax控件 
*/

function ajax(url,pars,fun){
 var aj = new Object();
 aj.url=url;
 aj.pars=pars;
 aj.resultHandle=fun;
 aj.createXMLHttpRequest = function() {
  var request = false;
  if(window.XMLHttpRequest) {
   request = new XMLHttpRequest();
   if(request.overrideMimeType) {
    request.overrideMimeType('text/xml');
   }
  } else if(window.ActiveXObject) {
   var versions = ['Microsoft.XMLHTTP', 'MSXML.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.7.0', 'Msxml2.XMLHTTP.6.0', 'Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP'];
   for(var i=0; i<versions.length; i++) {
    try {
     request = new ActiveXObject(versions[i]);
     if(request) {
      return request;
     }
    } catch(e) {}
   }
  }
  return request;
 }
 
 aj.XMLHttpRequest=aj.createXMLHttpRequest();
 
 aj.processHandle = function() {
  if(aj.XMLHttpRequest.readyState==4 && aj.XMLHttpRequest.status == 200) {
   aj.resultHandle(aj.XMLHttpRequest);
  }
 }
 
 aj.get = function() {
  aj.XMLHttpRequest.onreadystatechange = aj.processHandle;
  aj.XMLHttpRequest.open("GET",aj.url+"?"+aj.pars);
  aj.XMLHttpRequest.send(null);
 }
 
 aj.post = function() {
  aj.XMLHttpRequest.onreadystatechange = aj.processHandle;
  aj.XMLHttpRequest.open('POST',aj.url,true);
  aj.XMLHttpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
  aj.XMLHttpRequest.send(aj.pars);
 }
 
  return aj;
}

补充:网页制作,js教程 
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,