首頁  >  文章  >  後端開發  >  如何使用 jQuery Ajax 每 10 秒持續取得資料?

如何使用 jQuery Ajax 每 10 秒持續取得資料?

Patricia Arquette
Patricia Arquette原創
2024-11-04 03:53:29851瀏覽

How to Continuously Fetch Data with jQuery Ajax Every 10 Seconds?

jQuery:每 10 秒呼叫 Ajax

在給定的場景中,目標是使用 Ajax 每 10 秒在 div 中顯示新的回饋項目。然而,提供的代碼只顯示了兩項,然後就停止了。

問題是程式碼缺少定期啟動 Ajax 呼叫的機制。若要實現此目的,請考慮使用 setInterval() 函數。

setInterval()

setInterval() 函數採用回呼函數和以毫秒為單位的間隔作為其參數。它會在指定的時間間隔過去後執行回調函數,並繼續執行,直到清除。

例如,您可以使用 setInterval() 如下:

<code class="javascript">setInterval(function(){get_fb();}, 10000);</code>

此程式碼將每 10 秒呼叫一次 get_fb() 函數。

Ajax 呼叫完成回呼

或者,您可以讓 Ajax 呼叫在完成後啟動下一個。這可以使用 Ajax 呼叫的 success() 或complete() 方法來實作。

使用success():

<code class="javascript">function get_fb(){
    var feedback = $.ajax({
        type: "POST",
        url: "feedback.php",
        async: false
    }).success(function(){
        setTimeout(function(){get_fb();}, 10000);
    }).responseText;

    $('div.feedback-box').html(feedback);
}</code>

使用complete ():

<code class="javascript">function get_fb(){
    var feedback = $.ajax({
        type: "POST",
        url: "feedback.php",
        async: false
    }).complete(function(){
        setTimeout(function(){get_fb();}, 10000);
    }).responseText;

    $('div.feedback-box').html(feedback);
}</code>

呼叫完成,這兩個方法都會啟動下一個Ajax 呼叫。

結論

setInterval( 的使用) 或 Ajax 呼叫完成回調允許定期連續檢索和顯示新的反饋項,解決停止前只顯示兩項的問題。

以上是如何使用 jQuery Ajax 每 10 秒持續取得資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn