2014-11-14 59 views
0

我試圖用$ .getJSON方法從URL中不斷拉出,我很好奇知道如何不斷拉取該數據並替換html中的現有數據。我已經閱讀了關於JQuery上這種方法的文檔,但我不確定它是否會在不刷新頁面的情況下持續更新。如何獲取JSON URL文件並使其不斷更新

我有這樣的事情

<script> 
    .getJSON(""http://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&sensor=true", function(data) { 
var address = json.results[0].formatted_address; 
$('#address').text(address); 
</script> 
<html> 
<p id="address"></p> 
</html> 

如果有人能幫助我,得到它,如果數據發生了變化,該頁面也將改變這一起,那將是巨大的。

+0

它不會自動更新。 'getJSON'只是獲取文件並返回它表示的對象。它不會得到它一遍又一遍,你將不得不設置一個腳本,再次獲取JSON幾秒鐘,並更新頁面 – Markasoftware 2014-11-14 23:58:22

+0

@Markasoftware你能告訴我,我會怎麼做呢?我會使用setTimeOut方法嗎?有什麼建議麼? – Jason 2014-11-14 23:59:51

+0

setInterval是標準方式,請看@ ChrisFritz的回答 – Markasoftware 2014-11-15 00:29:28

回答

1

您可以封裝的東西,像這樣的代碼:

window.setInterval(function(){ 
    // stuff I want to run every 5 seconds 
}, 5000); 

然後每5000毫秒(即5秒),它會獲取新的JSON,並與新的地址代替當前地址。

+0

克里斯我的問題是如何讓你在開始持續時間運行,因爲我必須等待5秒才能實際更新。 – Jason 2014-11-15 02:08:50

+0

如果將該代碼放入函數中,則可以在頁面加載時運行函數,然後在'setInterval'內調用該函數。 – 2014-11-16 03:08:04

+0

會是一個更好的選擇,只是調用該函數,然後立即在其上運行setinterval? – Jason 2014-11-16 04:33:37