2009-04-28 55 views
5

因爲你都知道更新面板發送相同的響應服務器作爲一個完整的回發(或者我理解錯誤),這是事實,它比一個完整的回發要好得多。微軟AJAX更新面板的專業替代品?

那麼有沒有其他辦法只發送響應數據?就像你有一個不適合返回日期的方法,我認爲這是唯一應該發送的東西,而不是整個控制視圖狀態,它會顯示它(也許我理解錯了)。

我正在使用Telerik AJAX控件,它們建立在Microsoft AJAX上,所以沒有太多的改進。

我喜歡的一種方法是http://www.coolite.com/他們有AJAX方法和事件,我認爲這是我正在尋找的,但該項目正在緩慢移動,並且沒有靈活性滿足我的要求。

所以任何輸入是高度讚賞。

回答

3

這就是爲什麼我鼓勵剛接觸AJAX的程序員到learn the basics before adopting a library--當你瞭解實際發生的事情時,這種優化就變得很明顯。

那麼有沒有其他的方法只發送響應數據?就像,你有一個方法只會返回一個日期?

是的。最基本的方法是將日期字符串寫入響應流並在發送任何其他內容之前結束響應--HTTP處理程序(ashx)對此非常適用。有關更多ASP.NET AJAX友好技術,請查看Web方法。

+0

非常感謝很多人的回覆,我認爲網絡方法很棒,但是關於發佈回來呢? – DevMania 2009-04-28 16:23:23

+0

如果您想要超越數據繁重的更新面板,以實現更有針對性的高效技術,您必須真正選擇要手動發送的數據。閱讀一些基本的XMLHttpRequest教程 - 一旦你理解了下面的內容,它會變得更有意義。 – Shog9 2009-04-28 16:27:07

1

而不是調查控件我建議你研究Ajax作爲一種技術,並找出它是如何工作的。完成此操作後,請查看可用的實現方式,例如UpdatePanel的是,jQuery等

1

大家都知道更新面板作爲一個完整的郵寄同一響應服務器返回(或者也許是我理解錯了)

的AJAX框架的主要思路是以消除整頁回發。只有頁面的相關部分被更新,沒有令人不安的刷新。在客戶機和服務器之間傳輸的標記顯着減少,這爲用戶帶來顯着的性能提升。

但是如果你正在尋找一個頁面回發的替代方案,那麼我會推薦jQuery,但是從這個問題來看,好像你是新來的AJAX,所以假設你知道javascript,希望你知道首先要了解jQuery作品

4

如果您想要更多的控制,一種技術是使用JQuery和AJAX客戶端庫ADO.NET數據服務來綁定客戶端的JSON數據。

檢查此樣本here。這是JQuery補充ASP.Net AJAX的一個很好的例子。

首先,我從SQL Server中檢索數據,我需要它在JSON格式。我使用ADO.NET數據服務的AJAX客戶端庫對後端進行REST(GET)查詢。首先,我將獲取數據......我將「datatable.js」作爲客戶端腳本包含進來,並使用Sys.Data.DataService()進行異步查詢。在JavaScript中,如果它具有「Sys」,則可以告訴它是Microsoft類型。它的前面。所有客戶端支持ADO。NET Data Services位於datatable.js中。