2015-04-12 48 views
-2

當我嘗試在我寫入的新函數中使用函數sleep(2)時,它不起作用。在新函數中使用函數時出錯

function deleterow(id){ 
    $.post("taskpost.php", { "deleteid": id, "delete":true }); 
    sleep(1); 
    $('#taskslist').load('taskslist.php').fadeIn('slow'); 
}; 
+0

「睡眠」定義在哪裏?你可能想要使用'setTimeout' –

+0

什麼不行?爲什麼使用'sleep'而不是'setTimeout'?如果您談論錯誤,會顯示什麼錯誤?預期的行爲是什麼? – Xufox

+0

*「它不工作」*什麼是「它」? 「它」應該如何工作?會發生什麼呢? –

回答

0

您是否編碼了sleep函數或者您是否正在使用某個其他庫?

如果你想等待post請求完成嘗試使用這樣的:

$.post("taskpost.php", { "deleteid": id, "delete":true }) 
.done(function(data){ 
     $('#taskslist').load('taskslist.php').fadeIn('slow'); 
}); 

如果仍然要延遲它一定程度上可以使用setTimeoutdone回調。

+0

我想所有的解決方案都可以爲我工作,但我只選擇你的,它的功能就像一個魅力:) –

0

在Javascript中沒有sleep()這樣的功能。如果您試圖爲您的功能添加延遲,請改爲使用setTimeout(callback,delay)

0

我想我知道問題是什麼。也許jQuery中的post不起作用。有時,當你有一個無法找到/完成的功能時,它會停止繼續前一個功能。另一個問題是沒有睡眠功能。如果您試圖延遲,請使用setInterval功能。

祝你好運!

+0

'setInterval'不是一個好的候選人。它在設定的時間後重復執行回叫。超時後應使用'setTimeout'來執行一次函數。 – TheVillageIdiot

相關問題