我在这里有一个按钮来启动功能。和往常一样
<button onclick="start()">START</button>
这是我的循环功能。
function start() {
$.ajax({
url: url + value,
type: 'GET',
async: true,
success: function(result) {
if (result.match("success")) {
removeline();
live(result);
}else {
removeline();
dead(result);
}
}
});
}, 2000 * index);
}
现在我可以使用什么功能来使代码的执行停止在上方。我想要可以开始和停止的东西。
答案 0 :(得分:2)
这可能会帮助
var stopped = false, tId;
function stop() {
stopped = true;
clearTimeout(tId);
}
function start() {
stopped = false;
$.ajax({
url: url + value,
type: 'GET',
async: true,
success: function(result) {
if (result.match("success")) {
removeline();
live(result);
} else {
removeline();
dead(result);
}
if (!stopped) tId = setTimeout(start, 2000 * index)
}
});
}
<button type="button" onclick="start()">START</button>
<button type="button" onclick="stop()">Stop</button>
答案 1 :(得分:-1)
尝试取消Abort Ajax requests using jQuery中显示的请求
var xhr = $.ajax({
type: "POST",
url: "some.php",
data: "name=John&location=Boston",
success: function(msg){
alert( "Data Saved: " + msg );
}
});
xhr.abort()