1
我目前正在通過谷歌可視化創建谷歌圖表,並且希望能夠通過單擊按鈕刷新/更新此圖表。我已經嘗試了很多不同的方法來做到這一點,但沒有一個可行,所以我正在尋找任何人都可以提出的建議。我目前的平臺是ASP.net(用C#),谷歌的東西是用javascript/jquery(顯然)編寫的。謝謝!立即刷新Google可視化
我目前正在通過谷歌可視化創建谷歌圖表,並且希望能夠通過單擊按鈕刷新/更新此圖表。我已經嘗試了很多不同的方法來做到這一點,但沒有一個可行,所以我正在尋找任何人都可以提出的建議。我目前的平臺是ASP.net(用C#),谷歌的東西是用javascript/jquery(顯然)編寫的。謝謝!立即刷新Google可視化
Gviz可以選擇使用JSON數據填充圖表,因此,您可以使用jquery輕鬆完成此操作,只需調用您的服務器以獲取一組新數據,讓它返回JSON,然後將其傳遞給一個繪製圖表的函數。
你的jQuery/JavaScript的西港島線是這個樣子:
function drawMyChart(data) {
// stuff to draw chart using the contents of data
// data should be Gviz Data Table in JSON format
// your server needs to output this
var dt = new google.visualization.DataTable(data)
// rest of your stuff, just like standard gviz
}
function makeAjaxCall() {
$.ajax({
url: '/path/to/data/json',
sucess: drawMyChart(a),
dataType: 'json' // this is important, have it interpreted as json
});
}
// html somewhere
<input type='button' onclick='makeAjaxCall()'>Go</input>
關於正確格式化你的JSON響應,有一對夫婦圖書館在那裏,幫助你,雖然我不知道任何東西特別是在你提到的語言中。例如,以python爲例。
如果你掙扎,你可以轉儲所有條目的數組如下:
[[name, age],[john, 25],[paul, 20]]
,並使用google.visualization.arrayToDataTable當它到達從您的服務器爲JSON回解釋。
希望有所幫助。
想更新而不刷新整個頁面? – jrb
是的,這將是最佳的。 – mrK
那麼updatepanel如何呢? – jrb