我知道,asp.net中繼器沒有客戶端對象模型,我們堅持改善許多具有中繼器/ gridview功能的頁面的性能,並通過服務器端代碼向其添加行。ASP.Net:如何使用DOM/Javascript將行添加到中繼器?
我們使用的UpdatePanel到ajaxify添加行中繼/ GridView控件的功能,但所花費的時間服務器的行程和渲染回在瀏覽器上是不能接受的。
是否有某種方式在此可在客戶方來完成,以提高添加行到中繼器/ gridview的性能。我們正在使用Asp.net 2.0
我知道,asp.net中繼器沒有客戶端對象模型,我們堅持改善許多具有中繼器/ gridview功能的頁面的性能,並通過服務器端代碼向其添加行。ASP.Net:如何使用DOM/Javascript將行添加到中繼器?
我們使用的UpdatePanel到ajaxify添加行中繼/ GridView控件的功能,但所花費的時間服務器的行程和渲染回在瀏覽器上是不能接受的。
是否有某種方式在此可在客戶方來完成,以提高添加行到中繼器/ gridview的性能。我們正在使用Asp.net 2.0
我已經發現,Repeater控件不具有可以用來做客戶端的操作,比如添加行和東西的DOM,出了唯一的辦法(由於某些限制),我不得不是使用GridView控件,然後使用它的DOM,這就是我最終做的。
的UpdatePanel仍執行一整頁回傳,然後簡單地更新任何內容是在面板內部。那就是你的放緩來自哪裏。
至於使用AJAX來加快速度,你要直接使用AJAX調用只請求您需要的數據。你可以用ASP.NET AJAX來做到這一點。
在page_load事件處理程序中,註冊您的AJAX。 (VB.NET)
Ajax.Utility.RegisterTypeForAJAX(GetType(ThisPageClass))
然後,創建一個可以被訪問通過AJAX功能,像這樣:
<Ajax.AjaxMethod()> _
Public Function GetNewRows() As String
''//do stuff
Return jsonObj
End Function
然後,在客戶端,你可以調用它像這樣:
ThisPageClass.GetNewRows(someCallbackFunction);
function someCallbackFunction(result) {
var json = ParseJSON(result.value);
for(var i=0; i<json.length; i++) {
// do whatever
}
}
你只需要在孔堵塞!