Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.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
ExtJs中的CheckboxSelectionModel网格:无法选中网格面板中的复选框,选中标题复选框时将选中所有行_Extjs_Grid - Fatal编程技术网

ExtJs中的CheckboxSelectionModel网格:无法选中网格面板中的复选框,选中标题复选框时将选中所有行

ExtJs中的CheckboxSelectionModel网格:无法选中网格面板中的复选框,选中标题复选框时将选中所有行,extjs,grid,Extjs,Grid,我的表格中有一个带有复选框SelectionModel的网格面板。我使用的是ExtJS3.4。这是我的网格面板 var selectModel = new Ext.grid.CheckboxSelectionModel(); var drop_pick_grid = new Ext.grid.GridPanel({ store : dropPickGridStore, cm : new Ext.grid.ColumnModel([ selectModel, { sortable : t

我的表格中有一个带有复选框SelectionModel的网格面板。我使用的是ExtJS3.4。这是我的网格面板

var selectModel = new Ext.grid.CheckboxSelectionModel();

var drop_pick_grid = new Ext.grid.GridPanel({
store : dropPickGridStore,
cm : new Ext.grid.ColumnModel([ selectModel, {
    sortable : true,
    header : "Drop/Pick Loc",
    dataIndex : 'locationName',
    width : 170,
    renderer : function(value, metaData, record, rowIndex,
            colIndex, store) {
        var refColor = record.data.tourTypeColor;
        //console.log(record);
        metaData.attr = 'style="background-color:' + refColor + ';"';
        return record.get('locationName');
    }
}, {
    header : "Town/City",
    sortable : true,
    dataIndex : 'city',
    width : 120
}, {
    header : "Address",
    sortable : true,
    dataIndex : 'addr',
    width : 170
}, {
    header : "EST.Un/Load Time",
    sortable : true,
    dataIndex : 'estimatedTime',
    width : 100
} ]),
sm : new Ext.grid.CheckboxSelectionModel(),
//width : 570,
//height : 390,
autoHeight : true,
autoWidth : true,
frame : true,
iconCls : 'icon-grid',
renderTo : document.body
});
此网格使用Json从postgresql数据库加载

var dropPickGridStore = new Ext.data.JsonStore({
fields : [ {
    name : 'locationCode'
}, {
    name : 'locationName'
}, {
    name : 'city'
}, {
    name : 'addr'
}, {
    name : 'estimatedTime'
}, {
    name : 'tourTypeColor'
} ],
root : 'dropPickLoc',
idProperty : 'locationCode',
//autoDestroy : true,
autoLoad : true,

proxy : new Ext.data.HttpProxy({
    url : "http://" + host + ":" + port + "/" + projectName + "/"
            + "PendingDropPicks"

}),
reader : {
    type : 'json',
    root : 'dropPickLoc'
    //idProperty : 'locationName',
},
});

网格已成功加载。问题是我无法选中网格中的复选框X,但它可以通过单击标题复选框来选择所有行。为什么它不能单独检查每一行。

必须在
列和
selModel
配置中使用相同的选择模型对象。在这里,您将创建
Ext.grid.CheckboxSelectionModel
的两个不同实例

替换此行:

sm: new Ext.grid.CheckboxSelectionModel(),
为此:

sm: selectModel,

您必须在
列和
selModel
配置中使用相同的选择模型对象。在这里,您将创建
Ext.grid.CheckboxSelectionModel
的两个不同实例

替换此行:

sm: new Ext.grid.CheckboxSelectionModel(),
为此:

sm: selectModel,

里克索,我已经试过了。但是我不能勾选网格的任何复选框。我只能检查标题复选框我的DropPickGridStore中是否有任何错误我可以在您的商店中发现任何错误。。。令人惊讶的是,我建议的解决方案对你不起作用。对于我发布的fiddle,我从这一个的代码开始,我只是更改了
sm
以使用相同的实例使其工作。如果你能用小提琴再现你的问题,我想我能告诉你更多…这很有效。我必须分别为两个网格定义select模型。谢谢你宝贵的指导,rixorixo,我已经试过了。但是我不能勾选网格的任何复选框。我只能检查标题复选框我的DropPickGridStore中是否有任何错误我可以在您的商店中发现任何错误。。。令人惊讶的是,我建议的解决方案对你不起作用。对于我发布的fiddle,我从这一个的代码开始,我只是更改了
sm
以使用相同的实例使其工作。如果你能用小提琴再现你的问题,我想我能告诉你更多…这很有效。我必须分别为两个网格定义选择模型。Thanx为您的宝贵指南rixo