2011-07-25 40 views
0

我有一個小部件必須獲取json數據。 json的數據將會改變...通過ajax獲取數據或包含一個JavaScript文件

我有兩個選項可以將這些內容包含在boot-loader文件中。

--------------------------------------------- -------------------------------------------------- ------------

  • 包括一個JavaScript文件的數據和一個函數來處理該數據,因爲該文件是完全包含的。

OR

  • 使用AJAX來獲取JSON數據。

------------------------------------------- -------------------------------------------------- --------------

  1. 哪個更好的界面?

  2. 哪個代碼更容易?

  3. 哪個更容易出錯?

  4. 哪個更適合瀏覽器?

  5. 在客戶端執行哪個更輕更快?

+0

您能否提供有關該應用程序的更多詳細信息?你需要自動更新這個JSON數據嗎? – namuol

回答

0

哪個更好的界面? JavaScript包含更容易使用。你也不需要使用jquery,這樣也會減小widget的大小。

哪個代碼更容易? JavaScript包含更容易使用。

哪個更容易出錯?哪個更適合瀏覽器? 您正在使用的jsonp的JavaScript包含方法是跨域兼容的,並且將會有更少的錯誤。

在客戶端執行哪個更輕更快? 實際上取決於...但執行中應該沒有太大的區別,而是取出應該沒有太大區別的小部件。

使用JavaScript文件包含

+0

謝謝。很像關於jsonp的想法 – Anush

1

你在這裏問的是錯誤的問題。

如果您的小部件將使用靜態數據,我的意思是在您刷新頁面之前json數據不會更改,那麼您可以將數據包含在您所服務的js文件中。另一方面,如果你明白地使用新數據來刷新你的小部件而不刷新頁面(例如在某個動作上點擊一個刷新按鈕),你將需要通過ajax調用服務器來獲取數據。

你也可以結合這兩種方法。在頁面的第一次加載時,您可以獲取js文件的數據,然後在每個refrech上對服務器中的某個函數執行ajax調用,以便返回所需的refreched數據。

在這兩種情況下,您將需要解析從json到javascript對象的數據。希望這不是很困難&你可以通過在google上搜索來獲得很多關於如何使用json數據的例子。

也許你可以更具體地瞭解窗口小部件類型或它做了什麼,這樣我可以幫助你更多。

+0

http://domainsoutlook.net/wjs/5_11593/示例小部件 – Anush

+0

鏈接不工作! – talelcool

+0

它是....請再試一次 – Anush