如何从网格中删除多个选定的行

时间:2014-11-02 11:24:32

标签: extjs extjs4 selection

我有网格,然后我可以选择几行或所有行,并在工具栏上使用“删除”按钮。我可以删除一行,但删除几行;选定的行我没有方法。

有人能帮助我吗?谢谢。

以下是删除一个选定的行:

listeners: {
    click: {
        scope: this,
        fn: function(sm, selection) {
            var selection = this.getView().getSelectionModel().getSelection()[0];
            /*if (selection.length > 1) {
                store.removeAll(selection);
            }*/ //This not working
            else {
                store.remove(selection);
            }
            store.sync();
        }
    }
}

1 个答案:

答案 0 :(得分:2)

selectionModel.getSelection()会为您提供一系列记录。 如果您能够获取所有选定的行,则可以访问循环中的每一行,也可以保留一些选定的行。

onDeleteClick : function() {
    var studentGrid = this.getStudentGrid();
    var studentStore = studentGrid.getStore();
    var selectedRows = studentGrid.getSelectionModel().getSelection();

    if (selectedRows.length) {
        studentStore.remove(selectedRows);
    } else {
        Ext.Msg.alert('Status', 'Please select at least one record to delete!');
    }
 }