利用Ajax进行交互JS类

cazry5354

cazry5354

2016-02-19 15:33

今天图老师小编给大家精心推荐个利用Ajax进行交互JS类教程,一起来看看过程究竟如何进行吧!喜欢还请点个赞哦~

    最近做的一个项目中有需要使用Ajax的部分,正好不是很忙,所以自己写了一个简单的Ajax类,拿出来share一下:

function BmAjaxObject()
{
 this.ajaxObj = this.getXmlHttpObject();
}

BmAjaxObject.prototype.getXmlHttpObject = function()
{
 var _ajaxObj;
 try
 {
  _ajaxObj = new ActiveXObject("Msxml2.XMLHTTP");
 }
 catch(e1)
 {
  try
  {
   _ajaxObj = new ActiveXObject("Microsoft.XMLHTTP");
  }
  catch(e2)
  {
   _ajaxObj = false;
  }
 }
 if(!_ajaxObj && typeof(XMLHttpRequest) != 'undefined')
 {
  _ajaxObj = new XMLHttpRequest();
 }
 return _ajaxObj;
}

BmAjaxObject.prototype.doCallBack = function(url)
{
 if(this.ajaxObj)
 {
  this.ajaxObj.open('GET', url);
  var othis = this;
  this.ajaxObj.onreadystatechange = function() {othis.readyStateChange()};
  this.ajaxObj.send(null);
 }
}

BmAjaxObject.prototype.abortCallBack = function()
{
 if(this.ajaxObj)
 {
  this.ajaxObj.abort();
 }
}

BmAjaxObject.prototype.readyStateChange = function()
{
 if(this.ajaxObj.readyState == 1)
 {
  this.onLoading();
 }
 else if(this.ajaxObj.readyState == 2)
 {
  this.onLoaded();
 }
 else if(this.ajaxObj.readyState == 3)
 {
  this.onInteractive();
 }
 else if(this.ajaxObj.readyState == 4)
 {
  if(this.ajaxObj.status == 0)
  {
   this.onAbort();
  }
  else if(this.ajaxObj.status == 200)
  {
   this.onComplete(this.ajaxObj.responseText, this.ajaxObj.responseXML);
  }
  else
  {
   this.onError(this.ajaxObj.status, this.ajaxObj.statusText, this.ajaxObj.responseText);
  }
 }
}

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/webkaifa/)

BmAjaxObject.prototype.onLoading = function() {}

BmAjaxObject.prototype.onLoaded = function() {}

BmAjaxObject.prototype.onInteractive = function() {}

BmAjaxObject.prototype.onComplete = function(responseText, responseXml) {}

BmAjaxObject.prototype.onError = function(status, statusText, responseText) {}

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/webkaifa/)

BmAjaxObject.prototype.onAbort = function() {}

使用方法:

var a = new BmAjaxObject();
a.doCallBack('DesignFacade');

a.onComplete = function(responseText, responseXml)
{
 alert(responseText);
}

 

    同样,其他的方法可以使用相同的方式加上,项目中试用后,效果还可以。(里边用到了JS的类的概念)

展开更多 50%)
分享

猜你喜欢

利用Ajax进行交互JS类

Web开发
利用Ajax进行交互JS类

调用prototype.js的ajax进行post提交示例源码

Web开发
调用prototype.js的ajax进行post提交示例源码

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

AJAX如何与后台交互

Web开发
AJAX如何与后台交互

AJAX请求类

Web开发
AJAX请求类

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

ajax AjaxDownloader.js[modified]

Web开发
ajax AjaxDownloader.js[modified]

JS教程:学习笔记之JS类

Web开发
JS教程:学习笔记之JS类

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

若相惜、亦莫离、 - QQ情侣分组

若相惜、亦莫离、 - QQ情侣分组

扫除AJAX大路上的荆棘

扫除AJAX大路上的荆棘
下拉加载更多内容 ↓