纯JavaScript实现AJAX
来源: 阅读:1041 次 日期:2015-04-17 13:24:06
温馨提示: 小编为您整理了“纯JavaScript实现AJAX”,方便广大网友查阅!

纯JavaScript实现AJAX。具体代码如下:

window.lcq = {};

(function(obj) {

obj = {};

//创建xmlhttprequest对象

obj.createXMLHttpRequest = function() { if (window.ActiveXObject) { var aVersions = ["MSXML2.XMLHttp.5.0", "MSXML2.XMLHttp.4.0", "MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp", "Microsoft.XMLHttp"]; for (var i = 0; i < aVersions.length; i++) { try { return new ActiveXObject(aVersions[i]); } catch (oError) { continue; } } } else if (window.XMLHttpRequest) { return new XMLHttpRequest(); } throw new Error("XMLHttp object could not be created."); }

//ajax

obj._xmlHttp = null;

obj.ajax = function(options) {

try {

obj._xmlHttp = this.createXMLHttpRequest();

obj._xmlHttp.open(options.method, options.url, true);

obj._xmlHttp.setRequestHeader("cache-control", "no-cache");

obj._xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

obj._xmlHttp.onreadystatechange = function() {

if (obj._xmlHttp.readyState == 4) {

if (obj._xmlHttp.status == 200) {

var _response = "";

switch (options.dataType.toLowerCase()) {

case "json":

_response = eval(obj._xmlHttp.responseText);

break;

case "xml":

_response = obj._xmlHttp.responseXML;

break;

case "html":

_response = obj._xmlHttp.responseText;

break;

default:

_response = obj._xmlHttp.responseText;

break;

}

options.success(_response);

}

}

else { }

}

obj._xmlHttp.send(options.data);

}

catch (e) { }

}

//提示信息的方法

obj.show = function(message) { alert(message); }

//对象引用

lcq = obj;

$ = obj;

})(lcq);

//简单的用法

function _testAjax(obj) {

obj.disabled = true;

obj.value = "正在提交......";

$.ajax({ url: "/xmls/url.xml",

method: "GET",

data: "",

dataType: "html",

success: function(response) {

obj.disabled = false;

obj.value = "处理完毕";

//show(response);

},

error: function(response) { alert(response); }

});

}

function show(message) {document.getElementById("wraper").innerHTML = message;}

//html部分

更多信息请查看IT技术专栏

更多信息请查看 脚本栏目
手机网站地址: 纯JavaScript实现AJAX
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们| 联系我们| 人才招聘| 网站声明| 网站帮助| 非正式的简要咨询| 简要咨询须知| 加入群交流| 手机站点| 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:
咨询QQ:526150442(9:00—18:00) 版权所有:
云南网警报警专用图标
Baidu
map