2013-01-21 71 views
-2

我想請求這個Ajax響應每10秒的成績如何讓每N秒

function show() { 
    var ele = document.getElementById("ping"); 
    if (ele.style.display == "none") { 
     ele.style.display = "block"; 
    } 
    jQuery.ajax({ 
     type: "POST", 
     url: "checkit.php", 
     cache: false, 
     success: function (response) { 
      if (response == 1) { 
       alert("Success"); 
      } 
     } 
    }); 
} 
+0

對於初學者來說,它不會執行超過一次(除非你每10秒調用show()函數)? – ManseUK

+1

你的錯誤是,你是不是調用show方法每10秒。你爲此嘗試了什麼?我建議檢查出[的setInterval(https://developer.mozilla.org/en-US/docs/DOM/window.setInterval) – ryadavilli

+0

你可以編輯代碼,因爲我試過的間隔 – user1997281

回答

-1

你需要一個定時循環Ajax響應。

function show() { 
    var ele = document.getElementById("ping"); 
    if (ele.style.display == "none") { 
     ele.style.display = "block"; 
    } 

    window.setInterval(function(){ //loop 

     jQuery.ajax({ 
      type: "POST", 
      url: "checkit.php", 
      cache: false, 
      success: function (response) { 
       if (response == 1) { 
        alert("Success"); 
       } 
      } 
     }); 

    }, 10000); //10000 = 10 seconds 

} 
+0

的用戶在此標記爲** ** jQuery的,但所有的Ajax調用硬編碼的JavaScript ** **。這不會幫助他學習** jQuery **。你需要在你的答案中指出這一點。 –

+0

它不工作 – user1997281

+0

它正常工作,請確保您正在運行的功能「SHOW()」和網址:「checkit.php」是正確的。使用谷歌Chrome和CTRL + SHIFT + J控制檯。此外http://jsfiddle.net/SgCrS/5/ – Kivylius