// JavaScript Document
/*****************************************************************
jQuery Ajax封装通用类
*****************************************************************/
//js获取项目根路径,如: http://localhost:8083/uimcardprj
function getRootPath(){
//获取当前网址,如: http://localhost:8083/uimcardprj/share/meun.jsp
var curWwwPath=window.document.location.href;
//获取主机地址之后的目录,如: uimcardprj/share/meun.jsp
var pathName=window.document.location.pathname;
var pos=curWwwPath.indexOf(pathName);
//获取主机地址,如: http://localhost:8083
var localhostPaht=curWwwPath.substring(0,pos);
//获取带"/"的项目名,如:/uimcardprj
var projectName=pathName.substring(0,pathName.substr(1).indexOf('/')+1);
return(localhostPaht+projectName);
}
$(function(){
/**
* ajax封装
* url 发送请求的地址
* data 发送到服务器的数据,数组存储,如:{"date": new Date().getTime(), "state": 1}
* async 默认值: true。默认设置下,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为 false。
* 注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。
* type 请求方式("POST" 或 "GET"), 默认为 "GET"
* dataType 预期服务器返回的数据类型,常用的如:xml、html、json、text
* successfn 成功回调函数
* errorfn 失败回调函数
*/
jQuery.ax=function(url, data, async, type, dataType, successfn, errorfn) {
async = (async==null || async=="" || typeof(async)=="undefined")? "true" : async;
type = (type==null || type=="" || typeof(type)=="undefined")? "post" : type;
dataType = (dataType==null || dataType=="" || typeof(dataType)=="undefined")? "json" : dataType;
data = (data==null || data=="" || typeof(data)=="undefined")? {"date": new Date().getTime()} : data;
$.ajax({
type: type,
async: async,
data: data,
url: url,
dataType: dataType,
success: function(d){
var flag = (d==null || d=="" || typeof(d)=="undefined")?false:true;
if(flag && d['status'] == 'failed'){
layer.msg(d.msg, {
icon: 1,
time: 3000 //3秒关闭(如果不配置,默认是3秒)
}, function(){
var contextPath = getRootPath();
return window.location.href=contextPath + "/toLogin";
});
}
successfn(d);
},
error: function(e){
errorfn(e);
}
});
};
/**
* ajax封装
* url 发送请求的地址
* data 发送到服务器的数据,数组存储,如:{"date": new Date().getTime(), "state": 1}
* successfn 成功回调函数
*/
jQuery.axs=function(url, data, successfn) {
data = (data==null || data=="" || typeof(data)=="undefined")? null: data;
$.ajax({
type: "post",
data: data,
url: url,
dataType: "json",
success: function(d){
var flag = (d==null || d=="" || typeof(d)=="undefined")?false:true;
if(flag && d['status'] == 'failed'){
layer.msg(d.msg, {
icon: 1,
time: 3000 //3秒关闭(如果不配置,默认是3秒)
}, function(){
var contextPath = getRootPath();
return window.location.href=contextPath + "/toLogin";
});
}
successfn(d);
}
});
};
/**
* ajax封装
* url 发送请求的地址
* data 发送到服务器的数据,数组存储,如:{"date": new Date().getTime(), "state": 1}
* dataType 预期服务器返回的数据类型,常用的如:xml、html、json、text、jsonp
* successfn 成功回调函数
* errorfn 失败回调函数
*/
jQuery.axse=function(url, data, dataType, successfn, errorfn) {
data = (data==null || data=="" || typeof(data)=="undefined")? null : data;
$.ajax({
type: "post",
data: data,
url: url,
dataType: dataType,
success: function(d){
var flag = (d==null || d=="" || typeof(d)=="undefined")?false:true;
if(flag && d['status'] == 'failed'){
layer.msg(d.msg, {
icon: 1,
time: 3000 //3秒关闭(如果不配置,默认是3秒)
}, function(){
var contextPath = getRootPath();
return window.location.href=contextPath + "/toLogin";
});
}
successfn(d);
},
error: function(e){
errorfn(e);
}
});
};
});
封装jquery中的ajax
最新推荐文章于 2021-10-15 15:11:44 发布