⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 httprequest.js

📁 CallSun 人才招聘求职系统 V2.20
💻 JS
字号:
/*******************************
  AJAX相关基础,希望对大家都有帮助

  [open]方法中包含了5个参数,前三个是必要的,后两个是可选的(在服务器需要进行身份验证时提供),参数如下:
  http-method:HTTP的通信方式,比如GET或是POST
  url:接收XML数据的服务器的URL地址。通常在URL中要指明 ASP或CGI程序
  async:一个布尔标识,说明请求是否为异步的。如果是异步通信方式(true),客户机就不等待服务器的响应;如果是同步方式(false),客户机就要等到服务器返回消息后才去执行其他操作
  userID: 用户ID,用于服务器身份验证
  password: 用户密码,用于服务器身份验证

  xmlObj.[setRequestHeader]('CONTENT-TYPE','application/x-www-form-urlencoded');
  //设置content type,作为表单数据发送

  [send]方法的参数类型可以是字符串、DOM树或任意数据流

  在客户端发送数据的过程中,与服务器端的交互状态是不断的发生变化的
[0]uninitialized未初始化(在XMLHttpRequest开始前)(还没开始)
[1]loading(一旦初始化)(加载中)
[2]loaded(一旦XMLHttpRequest从服务器端获得响应)(已加载)
[3]interactive(当对象连接到服务器)(信息交互中)
[4]complete(完成)(完成)

  var returnText = xmlObj.responseText;  //传回的值作为字符串来处理
  var returnStream = xmlObj.responseStream;   //传回的值作为Stream
  var returnXml = xmlObj.responseXML;  //传回的值作为XMLDocument对象来处理,可以通过 JavaScript DOM 的相关函数处理
*******************************/

function createRequest()
{
  var http_request;

  if(window.XMLHttpRequest) { 
    http_request = new XMLHttpRequest();
    if (http_request.overrideMimeType) {
      http_request.overrideMimeType("text/xml");
    }
  }
  else if (window.ActiveXObject) { 
    try {
      http_request = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
      try {
        http_request = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (e) {}
    }
  }
  if (!http_request) { 
    window.alert("can't create XMLHttpRequest object.");
    return null;
  }  
  return http_request;
}

var net = new Object();
net.READY_STATE_UNINITIALIZED = 0;
net.READY_STATE_LOADING       = 1;
net.READY_STATE_LOADED        = 2;
net.READY_STATE_INTERACTIVE   = 3;
net.READY_STATE_COMPLETE      = 4;
net.ContentLoader = function (url, onload, onerror, method, params, contentType)
{
  this.url = url;
  this.req = null;
  this.onload = onload;
  this.onerror = (onerror) ? onerror : this.defaultError;
  this.loadXMLDoc(url, method, params, contentType);
}
net.ContentLoader.prototype = {
  loadXMLDoc : function(url, method, params, contentType)
  {
    if (!method)
      method = 'GET';
    if (!contentType && method=='POST')
      contentType = 'application/x-www-form-urlencoded';
    this.req = createRequest();
    //if (window.ActiveXObject)
    //  this.req = new ActiveXObject("Microsoft.XMLHTTP");
    //else if (window.XMLHttpRequest)
    //  this.req = new XMLHttpRequest();
    if (this.req)
    {
      try
      {
        var loader = this;
        this.req.onreadystatechange = function()
        {
          loader.onReadyState.call(loader);
        }
        this.req.open(method, url, true);
        if (contentType)
          this.req.setRequestHeader('Content-Type', contentType);
        this.req.send(params);
      }
      catch(err)
      {
        this.onerror.call(this);
      }
    }
  },
  onReadyState : function()
  {
    var req = this.req;
    var ready = req.readyState;
    if (ready==net.READY_STATE_COMPLETE)
    {
      var httpStatus = req.status;
      if (httpStatus==200 || httpStatus==0)
        this.onload.call(this);
      else
        this.onerror.call(this);
    }
  },
  defaultError : function()
  {
    return;
    alert('error fetching data!' +
      '\n\nreadyState:' + this.req.readyState +
      '\nstatus:' + this.req.status +
      '\nheaders:'+ this.req.getAllResponseHeaders());
  }
}

function LoadXML(doc)
{
  var Browser = new Object();
  Browser.isMozilla = (typeof document.implementation != 'undefined') && (typeof document.implementation.createDocument != 'undefined') && (typeof HTMLDocument!='undefined');
  Browser.isIE = window.ActiveXObject ? true : false;
  Browser.isFirefox = (navigator.userAgent.toLowerCase().indexOf('firefox')!=-1);
  Browser.isOpera = (navigator.userAgent.toLowerCase().indexOf('opera')!=-1);
  var xml;
  if (Browser.isFirefox)
  {
    xml = new DOMParser().parseFromString(doc, "text/xml");
  }
  else
  {
    xml = new ActiveXObject("MSXml.DOMDocument");
    xml.loadXML(doc);
  }
  return xml;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -