我有一些很好用的ajax 代码。单击按钮后,它doAjax
每 2 秒调用一次该函数,直到它收到来自服务器的消息(成功为 text Initializing...please wait
)。
我要添加的是超时,以防服务器关闭或其他情况。所以我添加了超时和错误功能:
$(document).on("click", ".play", function() {
function doAjax(){
$.ajax({
url: 'index.php',
success: function(data) {
if (data == 'Initializing...please wait')
{
$('#quote p').html(data).css({'border': '1px solid', 'margin': '10px 0px'});
setTimeout(doAjax, 2000);
}
},
error: function(jqXHR, strError) {
if(strError == 'timeout')
{
$('#quote p').html("Oops! Not found...").css({'border': '1px solid'});
}
},
timeout: 8000
});
}
doAjax();
});
该代码仍然有效,但我从未看到 8 秒后发生超时。我尝试删除递归,但仍然有同样的问题。我究竟做错了什么?