为了编写 Wiktor ( https://stackoverflow.com/a/43338063/7666076) 发布的代码,如何在单击某个按钮(两个不同的按钮,如“暂停”和“播放”)后暂停和恢复发送 ajax 请求。
还有如何在点击“暂停”按钮后立即中断当前的 ajax 请求。我不想等待将由 ajax 查询获取的新数据。
这是我改编的代码:
function RefreshData()
{
console.log('Sending AJAX request...');
$.ajax({
type: "GET",
url: "getAjaxRequest.php?"+device+"&callback=?",
dataType: "jsonp"
}).done(function(dataJSON) {
adaptJsonData(dataJSON);
console.log('success');
}).fail(function() {
console.log('error');
}).always(function() {
intervalTime = 100;
console.log('Waiting '+intervalTime+' miliseconds...');
setTimeout(RefreshData, intervalTime);
});
return true;
}
function adaptJsonData(dataJSON) {
# ... some logic with dataJSON object
}
最佳答案
var xhr = null;
function RefreshData() {
if( xhr != null ) {
xhr.abort();
xhr = null;
}
xhr = $.ajax({'...'});
}
关于javascript - 暂停和恢复ajax重复请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49153829/