2014-11-20 4 views
0

У меня есть элемент SuperBoxSelect, заполненный из удаленного хранилища.extjs 3 цвета метки SuperBoxSelect

Мне нужен другой цвет для каждого тега (установлен на rowselect). Цветовая гамма поставляется с магазином.

Теперь я в конечном итоге пытается с:

displayFieldTpl: '<tpl for="."><div class="x-superbox-item" 
style="background:{color};">{text}</div> </tpl>' 

Однако TPL создает его на элементы внутри тега (который является элементом списка, который имеет другой элемент внутри для кнопки закрытия/X).

Что происходит, так это то, что в нем теперь есть цветная коробка меньшего размера, а фон по-прежнему имеет цвет по умолчанию.

Что мне нужно - это способ изменить элементы списка собственного цвета фона, чтобы не создать в нем новый элемент. Но tpl, похоже, недостаточно хорош для этого. Это не фиксированные цвета - они могут быть любыми, которые позднее устанавливаются в конфиге для каждого конкретного тега.

HTML, для него является:

<ul id="ext-gen747"> 
    <li id="ext-gen1001" class="x-superbox-item x-superbox-item x-superbox-item-hover"> 
     "TestTag2" 
     <a class="x-superbox-item-close" tabindex="0" href="#" id="ext-gen1002"></a> 
    </li> 
</ul> 

ответ

1

Вы можете определить classField или styleField в определении комбо что будет полезно в этом случае.

Например, если у вас есть цвета как имена (например, красный, зеленый), вы можете установить classField на color и определить правильные стили в css. Чтобы использовать styleField, вы должны определить вычисленное поле в каждой записи, чтобы оно отображало правильный тег стиля.

Вы также можете переопределить метод addItemBox.

Смежные вопросы