ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Ajax通用

Ajax通用

原创 Linux操作系统 作者:ITFOR 时间:2013-07-15 21:05:55 0 删除 编辑
//创建xmlHttpRequest对象
function createXMLHttpRequest() {
var xmlHttp = null;
if (window.XMLHttpRequest) { // Mozilla 浏览器
xmlHttp = new XMLHttpRequest();
} else if (window.ActiveXObject) { // IE浏览器
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
}
}
}
return xmlHttp;
}
/*
 * 发送Ajax异步请求
 * @param method请求方式
 * @param url 请求的url地址
 * @param str_params 字符串参数
 * @param callback 服务器返回状态正常时,调用的函数(可选参数)
 * @param error 服务器返回状态不正常时,调用的行数(可选参数)
 */
function sendRequest(method, url,str_params,callback,error){
//若XMLHttpRequest对象为空,则调用方法创建
var xmlHttp = createXMLHttpRequest();
//若为GET方式
if(method.toLowerCase() == "get" && str_params != null){
url+="?"+str_params;//将参数追加到url后面进行传递
}

//创建一个新的HTTP请求,指定请求属性
xmlHttp.open(method,url,true);
//设置回调函数
xmlHttp.onreadystatechange = function(){
//若请求完成且状态正常
if(xmlHttp.readyState == 4 && xmlHttp.status == 200 ){
//如果传入的callback参数是一个函数
if(typeof(callback) == "function"){
//调用callback函数
callback(xmlHttp);
}
}else{
//状态不正常,发生了错误
//如果传入的error参数是一个函数
if(typeof(error) == "function"){
//调用error函数
error(xmlHttp);
}
}
};
//若为post请求方式
if(method.toLowerCase() == "post"){
//设置Content-Type请求头
xmlHttp.setRequestHeader ("Content-Type","application/x-www-form-urlencoded");
//发送请求
xmlHttp.send(str_params);
}else{
//发送请求
xmlHttp.send(null);
}
}

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28910399/viewspace-766326/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2013-05-22

  • 博文量
    1
  • 访问量
    1236