У меня есть сеткаExt JS 4 сетки MultiSelect
Ext.define('a.view.a', {
extend: 'Ext.grid.Panel',
alias: 'widget.list',
store: 'a.store.store',
multiSelect: false,
enableKeyEvents: true,
initComponent: function() {
var me = this;
var user = TR.user;
this.addEvents('edit');
this.columns = [
{dataIndex: 'Id', width: 50, align: 'center', sortable: false }
];
this.actions = {
edit: Ext.create('Ext.Action', {
text: 'Изменить заявку',
icon: 'Content/Resources/images/editDoc.gif',
cls: 'selected-griditem-button',
handler: function() { this.fireEvent('edit', this.getRequest()); },
scope: this
})
};
var contextMenu = Ext.create('Ext.menu.Menu', {
items: [
this.actions.edit
]
});
this.on({
itemcontextmenu: function (view, rec, node, index, e) {
this.getSelectionModel().select(index);
e.stopEvent();
contextMenu.showAt(e.getXY());
return false;
}
, beforeitemdblclick: function (gr, rowIndex, e) {
this.fireEvent('edit', this.getRequest());
}
});
this.viewConfig = {
listeners: {
itemkeydown: function (v, r, item, index, e) {
if (e.getKey() == e.DELETE) {
e.stopEvent();
this.fireEvent('del', this.getRequest());
}
},
scope: this
}
};
this.callParent(arguments);
}
, getRequest: function() {
var sm = this.getSelectionModel();
var rs = sm.getSelection();
if (rs.length) {
return rs[0];
}
return null;
}
});
в мой контроллер у меня есть функция, которая EXEC при нажатии на элемент в сетке
, onSelectionChange: function (sm, rs) {
alert('wtf');
}
вопрос является 1.При я нажимаю на элемент в сетке первый раз у меня есть MessageBox с «WTF» второй раз тот же товар - нет (это хорошо)
2.But когда я делаю MULTISELECT: истинно каждый раз, когда я нажимаю на тот же товар у меня есть сообщение (это не хорошо :()
как я могу сделать первый вариант, но с "mul tiSelect: true "