Изменение цвета выделенных строк
Никак не пойму как изменить цвет выделенных ячеек...вроде задача-то не сложная...
Ext.getCmp('id_w_mtr') - это grid. Ext.getCmp('id_w_mtr').selModel.on('rowselect',function(sm, rowIdx, r){ sm.style.background='red'; }); Это конечно точно не так. Но как же добраться до стиля? Использую 3 версию Ext |
Так вроде они css-класс получают особый. Настрой свой css.
|
мне надо,чтобы при клике на строку менялся её стиль! дизайн в css я настрою,но мне надо при клике фон менять! фон строк,на которые нажимаю
|
Цитата:
|
ну пусть будет при клике,это неважно. главное сделать другой фон у строки,на которую нажал. в джава скрипт я бы событие на tr повесил и изменил бы значение style.background. а здесь так не получается,не пойму как добраться до объекта,которому менять background.
|
Ты че чудишь? Это дефолтое поведение гридов в ExtJS - по клику идет выделение строки. В Ext4 синеньким выделяется. В Ext3 мож другим цветом.
|
о,боги!)))профессор,какой ты потешный))раскрыл глаза мне на истину) у меня чекбоксмодэл. я выделяю несколько позиций. жму кнопку и эти отмеченные строки должны изменить фон. вот и всё,не хотел грузить лишними рассказами,но коли надо...:)
|
Засел с какой-то ерундой, аж самому противно...
вот как делаю (точнее сказать буду делать что-то наподобие): var c=Ext.getCmp('id_w_mtr').selModel.getSelections(); var lCheckModif=Ext.getCmp('id_w_mtr').store.getCount(); for (var j=0;j<lCheckModif;j++){ Ext.fly(Ext.getCmp('id_w_mtr').getView().getRow(j)).addClass('error'); } Завтра переберу все значения из таблицы на равенство с выделенными чекбоксами. Те записи, которые совпадут, отправлю в Ext.fly(Ext.getCmp('id_w_mtr').getView().getRow(j) ).addClass('error'); Вроде команда Ext.fly(Ext.getCmp('id_w_mtr').getView().getRow(0)).addClass('error'); работает сносно и меняет стиль для первой строки. А стало быть меняет фон, прописанный в css для класса 'error'. Всё конечно крайне кривенько, но...может кому-то мои догадки помогут. Надеюсь, завтра напишу окончательный вариант. |
Так в чем конкретно задача? Нужно просто поменять дефолтный стиль для выбранных строк? Или менять стиль выделенных строк при определенном событии (например нажатии кнопки), иными словами не всегда?
Если первый случай, то советую создать свой компонент унаследованный от стандартного грида и переопределить его sass. Если второй, то тоже создаем свой компонент, стиль не переопределяем, а создаем новое правило. По событии берем выделенные строки и добавляем нужный класс. |
Цитата:
|
Часовой пояс GMT +3, время: 08:35. |