2014-11-17 5 views
1

Например, есть метка (без текстового поля!):Как изменить цвет фона этикетки динамически?

Ext.create('Ext.form.Label', { 
    id: "lb1", 
    height: 20, 
    html: "Title" 
    cls: 'cls1' 
}) 

Как я могу изменить цвет фона динамически без CSS?

+0

Почему вы не хотите использовать CSS? – hgulyan

+0

Цвет фона используется как свойство классификации. Например, из темно-красного цвета для очень плохого, чтобы светло-зеленый для очень хорошего. Поэтому неудобно создавать так много стилей CSS. – Neffets

+0

Сохранение стилей в отдельных файлах css лучше всего подходит в большинстве случаев, но для вашего случая 2-й случай в моем ответе - это вариант. – hgulyan

ответ

3

Существует несколько способов достижения этого, но все они используют манипулирование CSS.

1. Изменить CSS класс на этикетке

CSS классы

.cls1 { 
    background-color: #fff; 
} 

.cls2 { 
    background-color: #ccc; 
} 

ExtJS

label.removeCls('cls1'); 
label.addCls('cls2'); 

2. Изменение стиля на DOM Element

label.getEl() SetStyle ('фон', '#ccc').

Удачи!