2016-07-23 50 views
1

我正在建立一個天氣數據實況網站,使用慈善捐贈給我的模板。它應該每5秒刷新一次元素數據,或者我設置的任何內容,但是在每個瀏覽器中,我不得不刷新或強制刷新,甚至刪除所有歷史記錄,Cookie等以獲取最新數據。我真的不想刷新整個頁面。RefreshID = setinterval不工作?

$(document).ready(function() { 
    windspeed(); 
}); 

function windspeed() { 
    $('#windspeed').load('windspeed.php'); 
} 
var refreshId = setInterval(windspeed, 5000); 
+0

我試圖使用四個空間規則的代碼發佈在這裏,但論壇軟件不想發佈我的代碼..... – mickeyb

+0

不,你還沒有嘗試過使用四空間規則。看,我*做*使用它,它的工作。 – nicael

+0

真的很抱歉,但我嘗試了4空間,也ctrl + k,我不能得到它的工作,對不起 – mickeyb

回答

0

問題:由於您使用的是setInterval,因此您在同一時間執行多個網址請求。改爲使用setTimeout,但只有在網址請求完成時。

您已經以取代$.ajax.load方法,因爲它有成功回調:

var refreshId; 

$(document).ready(function() { 
    windspeed(); 
}); 

function windspeed() { 
    $.ajax({ 
     cache: false, 
     success: function(response) { 
      $('#windspeed').html(response); 
      setTimeout(windspeed, 5000); 
     }, 
     type: 'GET', 
     url: 'windspeed.php' 
    }); 
} 
+0

非常感謝您的代碼,不幸的是我已經意識到,我可能不得不改變其他代碼來處理這個更新的代碼我可能不知道在哪裏找到它。 – mickeyb

1

是的,它的工作原理!非常感謝。考慮到您輸入的速度有多快,您的'windspeed'和'winspeed'一樣有2個拼寫錯誤,這並不奇怪。謝謝,我將與其他人一起使用相同的氣象站模板。你已經度過了我的一天,不,實際上你已經做了整整一週。

非常感謝。

+0

啊!我會更新它。抱歉。 – Hydro