Dalam senario yang diberikan, matlamatnya adalah untuk memaparkan item maklum balas baharu dalam div setiap 10 saat menggunakan Ajax. Walau bagaimanapun, kod yang disediakan hanya menunjukkan dua item dan kemudian berhenti.
Isunya ialah kod itu tiada mekanisme untuk memulakan panggilan Ajax secara berkala. Untuk mencapai ini, pertimbangkan untuk menggunakan fungsi setInterval().
Fungsi setInterval() mengambil fungsi panggil balik dan selang dalam milisaat sebagai hujahnya. Ia melaksanakan fungsi panggil balik selepas selang waktu yang ditentukan berlalu dan terus berbuat demikian sehingga ia dikosongkan.
Sebagai contoh, anda boleh menggunakan setInterval() seperti berikut:
<code class="javascript">setInterval(function(){get_fb();}, 10000);</code>
Kod ini akan panggil fungsi get_fb() setiap 10 saat.
Sebagai alternatif, anda boleh meminta panggilan Ajax memulakan panggilan seterusnya setelah selesai. Ini boleh dicapai menggunakan kaedah success() atau complete() bagi panggilan Ajax.
Menggunakan 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>
Menggunakan 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>
Kedua-dua kaedah ini akan memulakan panggilan Ajax seterusnya setelah yang semasa telah selesai.
Penggunaan setInterval( ) atau panggilan balik penyiapan panggilan Ajax membolehkan pengambilan dan paparan item maklum balas baharu secara berterusan pada selang masa yang tetap, menangani isu hanya menunjukkan dua item sebelum berhenti.
Atas ialah kandungan terperinci Bagaimana untuk Mengambil Data Secara Berterusan dengan jQuery Ajax Setiap 10 Saat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!