TimurYakov
TimurYakov

Reputation: 75

How to remove multiple selected rows from grid

I have grid then I can select few or all the rows and on toolbar with a "delete" button. I can delete one row, but for remove several; selected rows I don't have a method.

Can somebody help me? Thank you.

The following is for deletion of one selected row:

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();
        }
    }
}

Upvotes: 1

Views: 3165

Answers (1)

abc
abc

Reputation: 75

selectionModel.getSelection() will give you array of records. If you are able to get all the selected rows you can access each row in a loop and also you can leave some of the selected rows.

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!');
    }
 }

Upvotes: 2

Related Questions