带有行单击事件的复选框标题在extjs 6.5.1中无法正常工作

时间:2017-08-10 09:12:10

标签: javascript extjs extjs6-classic

我正在使用一个网格,每行有多行复选框。如果您通过单击标题复选框选择所有,并通过单击任何行取消选择,标题复选框也将被取消选中。 这在版本6.0.1 经典工具包中按预期工作。小提琴示例如下:

https://fiddle.sencha.com/#view/editor&fiddle/24tc

但是相同的代码在 ext 6.5.1 中不起作用,如果您选择all by header复选框,则取消选择任何行标题复选框不会首次取消选中。小提琴如下:

https://fiddle.sencha.com/#view/editor&fiddle/24tf

我需要在带有标题复选框的复选框模型中使用行单击。请建议我做什么

1 个答案:

答案 0 :(得分:0)

  

我需要在带有标题复选框的复选框模型中使用行单击。请建议我做什么

无需使用行点击。

我在 selModel 中进行了更改,无需按行选择复选框。 ExtJs 直接检查要点击行或单击复选框的复选框。

您可以通过fiddle演示来查看此处。

var store = Ext.create('Ext.data.Store', {
    fields: ['name', 'email', 'phone'],
    data: [{
        name: 'Lisa',
        email: 'lisa@simpsons.com',
        phone: '555-111-1224'
    }, {
        name: 'Bart',
        email: 'bart@simpsons.com',
        phone: '555-222-1234'
    }, {
        name: 'Homer',
        email: 'homer@simpsons.com',
        phone: '555-222-1244'
    }, {
        name: 'Marge',
        email: 'marge@simpsons.com',
        phone: '555-222-1254'
    }]
});

Ext.create('Ext.grid.Panel', {
    title: 'Simpsons',
    store: store,
    columns: [{
        text: 'Name',
        dataIndex: 'name'
    }, {
        text: 'Email',
        dataIndex: 'email',
        flex: 1
    }, {
        text: 'Phone',
        dataIndex: 'phone'
    }],
    height: 200,
    width: 400,
    renderTo: Ext.getBody(),
    selModel: {
        checkOnly: false,
        injectCheckbox: 'last',
        mode: 'SIMPLE'
    },
    selType: 'checkboxmodel'
});