📄 ajaxrequest.js
字号:
/*
类名:AJAXRequest
创建方法:var ajaxobj=new AJAXRequest();,如果创建失败则返回false
属性:method - 请求方法,字符串,POST或者GET,默认为GET
url - 请求URL,字符串,默认为空
async - 是否异步,true为异步,false为同步,默认为true
content - 请求的内容,如果请求方法为POST需要设定此属性,默认为空
callback - 回调函数,即返回响应内容时调用的函数,默认为直接返回,
回调函数有一个参数为XMLHttpRequest对象,即定义回调函数时要这样:
function mycallback(xmlobj)
方法:send() - 发送请求,无参数
一个例子:
<script type="text/javascript" src="ajaxrequest.js"></script>
<script type="text/javascript">
// 创建AJAX对象
var ajaxobj=new AJAXRequest();
// 设置回调函数,输出响应内容
ajaxobj.callback=function(xmlobj) {
document.write(xmlobj.responseText);
}
// 发送请求,URL为default.asp
ajaxobj.send("default.asp");
</script>
*/
function AJAXRequest() {
//初始化类,创建XMLHttpRequest对象
var xmlObj = false;
if(window.XMLHttpRequest) //Mozilla 浏览器
{
xmlObj = new XMLHttpRequest();
if (xmlObj.overrideMimeType) {//设置MiME类别
xmlObj.overrideMimeType("text/xml");
}
} else if (window.ActiveXObject) { // IE浏览器
try {
xmlObj=new ActiveXObject("MSXML2.XMLHTTP");
} catch(e1) {
try {
xmlObj=new ActiveXObject("Microsoft.XMLHTTP");
} catch(e2) {
xmlObj=false;
}
}
}
if (!xmlObj) { // 异常,创建对象实例失败
window.alert("不能创建XMLHttpRequest对象实例.");
return false;
}
/*
类属性
*/
this.method="GET"; //请求方法,字符串,POST或者GET,默认为GET
this.url=""; //请求URL,字符串,默认为空
this.async=true; //是否异步,true为异步,false为同步,默认为true
this.content=""; //请求的内容,如果请求方法为POST需要设定此属性,默认为空
this.callback=function(cbobj) {return;} //回调函数
/*
类方法:send(url)
发送请求,参数url为请求URL,字符串,如为null则用this.url
*/
var ObjSelf = this;
this.send=function(url) {
if(url != null) {
this.url = url;
}
// 确定发送请求的方式和URL以及是否同步执行下段代码
xmlObj.open(this.method, this.url, this.async);
xmlObj.onreadystatechange=function() {
// 判断对象状态
if(xmlObj.readyState==4) {
// 信息已经成功返回,开始处理信息
if(xmlObj.status==200|| xmlObj.status == 304) {
ObjSelf.callback(xmlObj);
} else { //页面不正常
alert("您所请求的页面有异常。\n"+xmlObj.status+"---"+xmlObj.statusText);
alert(xmlObj.responseText);
}
}
}
if(this.method=="POST") {
//alert(this.content);
xmlObj.setRequestHeader("Content-Length",this.content.length);
xmlObj.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xmlObj.send(this.content);
} else {
xmlObj.send(null);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -