ajax防止重复提交
2017-02-17 09:41
141 查看
//防止重复提交
var pendingRequests = {};
jQuery.ajaxPrefilter(function( options, originalOptions, jqXHR ) {
var key = options.url;
i=0;
i++;
console.log(key+"aaaaaaaaaaa"+i);
if (!pendingRequests[key]) {
pendingRequests[key] = jqXHR;
}else{
//jqXHR.abort(); //放弃后触发的提交
setTimeout(function(){console.log("放弃先触发的提交");},1);
pendingRequests[key].abort(); // 放弃先触发的提交
}
var success = options.success;
options.success = function(jqXHR, textStatus) {
pendingRequests[key] = null;
if (jQuery.isFunction(success)) {
success.apply(this, arguments);
}
};
var error = options.error;
options.error = function(jqXHR, textStatus) {
pendingRequests[key] = null;
if (jQuery.isFunction(error)) {
error.apply(this, arguments);
}
};
});
注意:ajax必须是异步时,这段代码才有效果
var pendingRequests = {};
jQuery.ajaxPrefilter(function( options, originalOptions, jqXHR ) {
var key = options.url;
i=0;
i++;
console.log(key+"aaaaaaaaaaa"+i);
if (!pendingRequests[key]) {
pendingRequests[key] = jqXHR;
}else{
//jqXHR.abort(); //放弃后触发的提交
setTimeout(function(){console.log("放弃先触发的提交");},1);
pendingRequests[key].abort(); // 放弃先触发的提交
}
var success = options.success;
options.success = function(jqXHR, textStatus) {
pendingRequests[key] = null;
if (jQuery.isFunction(success)) {
success.apply(this, arguments);
}
};
var error = options.error;
options.error = function(jqXHR, textStatus) {
pendingRequests[key] = null;
if (jQuery.isFunction(error)) {
error.apply(this, arguments);
}
};
});
注意:ajax必须是异步时,这段代码才有效果
相关文章推荐
- ajax 防止重复提交
- 在jquery中防止ajax重复提交
- jquery 防止ajax 重复提交 简单方法
- ajax防止表单重复提交
- jquery 防止ajax 重复提交 简单方法
- Jquery的$.ajax防止重复提交的方法
- 使用Ajax发送请求防止重复提交
- query 防止ajax重复提交
- jQuery的 $.ajax防止重复提交的两种方法(推荐)
- 防止ajax重复提交
- ajax防止多次点击重复提交
- 防止ajax表单重复提交
- jQuery的 $.ajax防止重复提交的两种方法(推荐)
- Ajax 防止表单重复提交
- jQuery如何防止Ajax重复提交
- 谈谈防止Ajax重复点击提交
- jquery a标签不可点击,绑定bind/解除unbind点击,ajax防止重复提交
- jquery 防止ajax 重复提交 简单方法
- jQuery的 $.ajax防止重复提交的两种方法(推荐)
- ajax防止重复提交