2013-05-07 100 views
0

我正在使用kendo UI Web網格來顯示一些數據。 由於我正在處理大量數據,因此我決定使用網格虛擬滾動功能,這非常棒。Kendo UI Web網格,虛擬滾動和動態複選框

現在,我需要添加一個非數據綁定列,它將填充一個複選框,以便我可以選中/取消選中網格中的記錄以進行進一步處理。

我凸輪能夠通過簡單地使用模板來添加複選框列:

columns: [ 
      { 
       field: "", 
       width:'3%', 
       title: " ", 
       hidden: false, 
       template: "<input type=\"checkbox\" />" 
      }, 

是我遇到的問題是,啓用時虛擬滾動,如果我選中一個複選框,然後滾動網格,當我回到被檢查的記錄時,它不再被檢查。

如何使用虛擬滾動並保持我的複選框被選中?

感謝

回答

2

中的行,當你通過儘可能多的記錄,爲您的pageSize是始終重新創建。但是,如果您確實將該複選框綁定到底層模型,則更改將會持續存在,並且一旦您返回到同一頁面,您將看到已選中的項目。使複選框反映更改模型

一種方法是這樣的:

grid.tbody.on('click',':checkbox',function(e){ 
    var row = $(this).closest('tr'); 
    grid.dataItem(row).set('isAdmin',$(this).is(':checked')); 

}) 

哪裏isAdmin是複選框是被綁定到字段的名稱。

Here是現場示例。