Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/467.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript EXTJS 5:如何仅在网格中单击复选框时选中复选框_Javascript_Extjs_Checkbox_Grid_Extjs5 - Fatal编程技术网

Javascript EXTJS 5:如何仅在网格中单击复选框时选中复选框

Javascript EXTJS 5:如何仅在网格中单击复选框时选中复选框,javascript,extjs,checkbox,grid,extjs5,Javascript,Extjs,Checkbox,Grid,Extjs5,请告诉我如何仅在单击复选框时在网格中选择行,而不在单击网格中的任何其他单元格时选择行 我还尝试使用下面的代码覆盖相同的代码,但无法达到预期的结果 Ext.CheckboxSelectionModel = Ext.extend(Ext.selection.CheckboxModel, { beforeselect: function (grid, record, index, eOpts) { } }); 一种方法是侦听事件并检查cellIndex是否与您的复选框cellIndex匹配。如果ce

请告诉我如何仅在单击复选框时在网格中选择行,而不在单击网格中的任何其他单元格时选择行

我还尝试使用下面的代码覆盖相同的代码,但无法达到预期的结果

Ext.CheckboxSelectionModel = Ext.extend(Ext.selection.CheckboxModel, {
beforeselect: function (grid, record, index, eOpts) {
}
});

一种方法是侦听事件并检查cellIndex是否与您的复选框cellIndex匹配。如果cellClick不匹配,请使用selectionModel./取消全部

cellclick: function (thisRef, td, cellIndex, record, tr, rowIndex, e, eOpts){
    if (cellIndex !== 0){ //Considering index 0 is checkbox column
        thisRef.selModel.deselect(record);
    }
}

最后。。。在没有得到适当的调整/破解后。。我在extjs论坛上发布了相同的内容,然后将其标记为一个bug,该bug将在v5.0.2中修复。。。 这是一个ExtJS 5错误

它很容易工作

selModel : Ext.create('Ext.selection.CheckboxModel', {
    checkOnly: true,
});
但只有在ExtJS 5.0.2中,它才是固定的

证明:

嘿。。谢谢你的解决方案。。。我已经试过了,但问题是,在我的场景中,一旦选中复选框,然后编辑任何相同的行单元格,我必须让选择保持不变。。。。这导致了我想要避免的选择和取消选择的处理。