0

我有一个 dojo (1.8.1) DataGrid,我无法检索 DataGrid 中的所有选定项目(网格中大约有 171 条记录)。问题是返回到 selectedItem 的某些数据为空。

有趣的是,如果我一直滚动到 DataGrid 的底部,然后运行下面的代码,我会得到所有记录..这很奇怪..

var gridy = dijit.byId("grid");
var items = gridy.selection.getSelected();
if (items.length) {
  dojo.forEach(items, function(selectedItem) {
   if (selectedItem !== null) {
     dojo.forEach(gridy.store.getAttributes(selectedItem),
            function(attribute){
              var value = gridy.store.getValues(selectedItem, attribute);
              alert('attribute: ' + attribute + ', value: ' + value);
            });
    } 
  });
}

So, when all items in the grid are selected (171) I only get 50 items showing as selected and the rest are null for selectedItem variable. 奇怪的问题,看起来像 DataGrid 中的错误?

谢谢!!

4

1 回答 1

1

这可能是由于paging(请参阅“分页和虚拟滚动”中的 DataGrid 教程)。“一次只渲染一小部分数据”。因此,一个讨厌的解决方法可能是在实例化它时rowsPerPage将您的 -property设置DataGrid为一个高值(如1000)。它应该高于预期在网格中显示的最大行数。

于 2012-12-12T17:03:11.280 回答