2009-07-20 35 views

回答

22

優點:

  1. 易於使用和配置

缺點(當然,我不知道其他任何優勢!):

here and here
現在最好的一部分,選擇:

使用jQuery的內置支持Ajax來作出GET/POST Ajax調用,這是非常簡單的(除更新面板,我會說簡單),並與絕對兼容大多數瀏覽器!
使用的許多簡單的方法jQuery提供做阿賈克斯一個的例子稱:

$('#anotherContainer').load('/Home/RegularAjaxResource'); 

這只是調用(在這種情況下RegularAjaxResource)的服務器資源,並顯示它的返回與UI元素的數據id anotherContainer

+2

+1,以包括鏈接到Encosia後 – 2009-07-20 05:36:38

+0

@ 7alwagy:完全喜歡jQuery的太...想到,如果你依靠webform的Viewstates和Postback,那麼非UpdatePanel選項就變得非常痛苦......我詳細闡述了 – andy 2009-07-20 05:51:08

6

我同意7alwagy,除了只是想添加一個重要的一點。

如果您想要更新/更改控件仍然可以在狀態控制的Webforms回傳模型(特別是Viewstate)中使用,您必須使用UpdatePanel。

例如:

如果明確使用JS來更新客戶端上的DropDownList控件的值,而你使用內置的Web表單回傳模式,您所做的更改韓元」不要被拿起來。

本質上,如果您依賴內置的Viewstates,那麼您必須使用UpdatePanel。你可以在技術上不使用它,但是你必須真正打擊框架才能完成任務。

如果您不依賴回發或視圖狀態,那麼您完全不需要UpdatePanel。

3

我認真地想不出使用updatepanels的一個好處。他們很傷心,我發現這很困難。

它們僅適用於最微不足道的ajax效果,如果您要進行任何數據檢索或數據庫查找,它們在擴展方面會遇到大問題。 UpdatePanels令人沮喪,並且很長一段時間我已經分享了更新面板難題herehereherehere

如果這還不足以說服你不使用updatepanel,那麼什麼都不會。

+1

我看過你的帖子,他們很弱。你只是抱怨使用更新面板,但從來沒有解釋爲什麼。只有一篇文章提到了在表格中包裝div的一些問題,因爲您遇到了一些問題。如果你不能想到單一的優勢,那麼你不知道如何正確使用它們。它們並不完美,但如果使用得當,它們有很好的用途。如果您的WebForm頁面依賴於視圖狀態,那麼它們非常有用。 – 2013-08-04 08:14:55

1

我同意更新面板是邪惡的,dangerous但在某些情況下,您可能想要使用它,而不是其他選項。

  • 該頁面有少量的asp.net控件,少了viewstate。
  • 頁面html不是太大。
  • 時間限於完成任務。
  • 表現不是第一個問題。
  • 想要保留控件的狀態與回發。
  • 有很多想要觸發的服務器端事件。
1

優點:

  1. 容易實現
  2. 無需編寫的JavaScript客戶端

缺點

  1. 因爲所有視圖狀態都被傳輸,所以使用更多帶寬
  2. 應該觸發ajax調用的元素應該在更新面板中。實際上並非一直可行
  3. 更新面板外部的數據不會發送到服務器,這可能需要進一步處理。
  4. 在實踐中開發商不能預先確定需要什麼數據都在更新面板
相關問題