利用動態載入模板,配合ajax實現無重新整理操作

2021-09-05 15:12:21 字數 1201 閱讀 9150

關鍵字:datagrid 動態模板 ajax

我們使用ajax實現無重新整理介面時,對於datagrid,repeater等列表還是比較麻煩的,經過我的嘗試,找出一種比較合理的方法,可以免除對html的加工處理,隨時獲取到資料列表的html content,並且列**式使用模板,更加容易維護,閱讀

原理是將模板寫入使用者控制項,使用loadtemplate來載入,然後將其賦給datagrid或repeater等控制項,繫結後輸出html到客戶端

.aspx.cs

[ajaxpro.ajaxmethod]

public string getlisthtml(string old)

webusercontrol1.ascx<%@ control language="c#" %>

<%# databinder.eval(((repeateritem)container).dataitem, "foldername")%>

上面就是列表的全部**, js端只需呼叫 類名.getlisthtml 即可快速獲取模板化的列表了。

對應datagrid,可以增加templatecollumn等方法來模板化

webusercontrol1.ascx

webusercontrol1.ascx<%@ control language="c#" %>

<%# databinder.eval(((datagriditem)container).dataitem, "foldername")%>

.aspx.cs 部分**:

datagrid datagrid1 = new datagrid();

itemplate temp = page.loadtemplate("webusercontrol1.ascx");

templatecolumn tc = new templatecolumn();

tc.headertext = "test";

tc.itemtemplate = temp;

datagrid1.columns.add(tc);

datagrid1.autogeneratecolumns = false;

datagrid1.datasource = albums.getfolderlist(1);

datagrid1.datamember = "id";

datagrid1.databind();

全文完

QTableWidget懶載入(動態載入)實現

在qtablewidget中加入一行行的資料,如果資料數量過多,滾動起來就會卡頓,插入資料時也會影響效能,為了解決這個問題,採用懶載入的方式,只在介面上顯示10幾條資料,填滿介面。同時增加而外的豎直滾動條,控制滾動條滑塊的大小,給外界看到的效果就是有隨著資料數量的增加,滾動條減小。滾動滾動條,或者插...

goloader golang動態載入的實現

這裡有以前的一些思路 不過改了好多,具體還是要看 這個動態載入庫是很有意思的專案,它直接重用了golang編譯器的輸出,不需要自己寫編譯器,就能支援所有golang的語言特徵,免費使用編譯器的優化。因為這個庫只進行符號重定位,和提供runtime資訊,所有這些邏輯是很少改動的,這樣使得這個庫相容能力...

Ajax動態滾動載入資料

核心 更新 window scroll function 首先,準備乙個分頁的儲存過程 create procedure proctest pagesize int,pagenumber int as select from select row number over order by useri...