将样式设置为GWT ListBox项

时间:2013-12-28 15:04:47

标签: java css gwt listbox

有没有办法将css样式应用于 GWT ListBox 下拉菜单(例如:更改某些项目的颜色) 我不能通过将样式设置为整个ListBox来实现它,因为我想为每个项目设置不同的样式!   结果将是这样的:

<select class="style1" id="test">
  <option class="style2" value="">&nbsp;</option>
  <option class="style2" value="AL">Alabama</option>
  <option class="style6" value="AK">Alaska</option>
  <option class="style6" value="AZ" class="red">Arizona</option>
  <option class="style6" value="AR">Arkansas</option>
  <option value="CA">California</option>
  <option value="CO">Colorado</option>
  <option value="CT">Connecticut</option>
  <option value="DE">Delaware</option>
 </select>

4 个答案:

答案 0 :(得分:4)

尝试使用options.getItem(i).getStyle().setColor("#FF0000");

ListBox listBox = new ListBox();
//Add item to listBox.
SelectElement selectElement = SelectElement.as(listBox.getElement());
NodeList<OptionElement> options = selectElement.getOptions();

for (int i = 0; i < options.getLength(); i++) {
     options.getItem(i).getStyle().setColor("#FF0000");
}

答案 1 :(得分:0)

在某些时候,我研究了这个完全相同的问题。 我找不到一种方法来设置ListBox元素的样式,只能找到整体列表。

在我的研究中,我记得看到其他基于GWT的库,其中包含具有此嵌入功能的更复杂的小部件(例如,如果我没记错的话,可以使用GXT或Sencha)。

从原始GWT的角度来看,我认为一种方法是使用CellList

答案 2 :(得分:0)

即使我很久以前也试过这个。我没有找到任何解决方案来使这项工作只用GWT。

然而,很少有第三方JS框架允许你这样做。您可以查看以下链接

http://silviomoreto.github.io/bootstrap-select/3/

http://brianreavis.github.io/selectize.js/

答案 3 :(得分:0)

使用css设置badboy样式:

.my_select {在这里控制的东西} .my_select option {color:#fff;背景色:#000}