我经常喜欢把ajax封装成更简单的写法
1.下面是我们的一个例子,有兴趣的人可以复制使用
$.xmlhttpPost = function (urlpost,callback, content) {
$.ajax({
url: urlpost,
method: 'post',
data: content,
dataType: 'json',
beforeSend: function (request) {
request.setRequestHeader("xhead-type", "ajax");
},
success: function (data) {
if (typeof callback == 'function') {
if (data.code == '0') { callback(true, data.msg, data); }
else { callback(false, data.msg, data); }
}
}, error: function (XMLHttpRequest, textStatus, errorThrown) {
if (istip) { layer.msg('发生错误:' + XMLHttpRequest.status + " " + XMLHttpRequest.readyState + " " + textStatus); }
}, complete: function () {
}
})
}
这种方式,定义了数据格式为json,所以返回的时候,必须是json格式,如果不想用json格式,只需要修改dataType即可
2.方法写好好了,下面就是调用了
$.xmlhttpPost('/comm/ajax.html',function (result, msg, data) {
if (result) {
//数据处理
}else{
//错误提示
}
}, 'abc=bbb');这种写法,在复杂项目上,会减少不少ajax重复代码的编写