如何取消选中Ext.selection.CheckboxModel中的全选复选框

Tom*_*and 1 javascript extjs extjs4

getSelectionModel().clearSelections()使用Ext.selection.CheckboxModel的网格上运行并使用选择列顶部的"全选"复选框选中所有行时,"全选"复选框仍保持选中状态.

我做了一个肮脏的黑客来绕过这个,但我想知道是否有一个更清洁的方式或如果这是一个错误.

Vya*_*huk 6

我会尝试在网格组件上放置一个监听器来跟踪选择更改(不确定它是否有用):

listeners: {
   selectionchange: function(grid, selected) {
        if(!selected.length) {
            grid.getSelectionModel().deselectAll();
        }
   }
}
Run Code Online (Sandbox Code Playgroud)

顺便问一下,你试过getSelectionModel().deselectAll()吗?在ExtJS 4.1中不推荐使用clearSelections,它在视图非选择模型上运行.