我正在使用Ajax请求继续在数据库中观看。
如果某些东西从DB返回,则执行必须停止。
如果某些东西从DB返回,那么我使用clearTimeout来停止执行setTimeout循环,但它不起作用。
这是代码:
var timeRunner;
(function worker() {
$.ajax({
type: "GET",
url: 'checkInDb.php',
data: {
tName: tName
},
success: function(data) {
var obj = JSON.parse(data);
mStudent = obj.student;
mTeacher = obj.teacher;
mTime = obj.time;
console.log(mStudent, mTeacher, mTime);
if (mStudent != '') {
clearTimeout(timeRunner);
}
},
complete: function() {
// Schedule the next request when the current one's complete
timeRunner = setTimeout(worker, 2000);
}
});
})();
如果mStudent
中出现了某些内容,那么我想停止执行但不起作用。