我在XPages中有一个comboBox,它在SSJS中显示类别和值的层次列表,作为向量填充。
我现在想对类别(即仅在生成的选项标签的类别上)应用样式表(粗体)
请注意,我不需要有关样式表如何工作的课程。我需要知道如何在输出的选项标签的类别中添加类或样式
我该怎么做?
谢谢
托马斯
UPDATED MY QUESTION WITH A WORKING CLASS
模仿组合框,类别,标签和值中具有3列的分类视图
public class Utils {
public static List<SelectItem> getGroupedComboboxOptions() {
try {
Database db = ExtLibUtil.getCurrentDatabase();
View vv = db.getView("ProdukterByCat");
Vector v = vv.getColumnValues(0);
List<SelectItem> groupedOptions = new ArrayList<SelectItem>();
SelectItemGroup group;
for (int i = 0; i < v.size(); i++) {
List<SelectItem> options = new ArrayList<SelectItem>();
group = new SelectItemGroup(v.get(i).toString());
ViewEntryCollection nvec = vv.getAllEntriesByKey(v.get(i), true);
ViewEntry entry = nvec.getFirstEntry();
while (entry != null) {
SelectItem option = new SelectItem(entry.getColumnValues().get(2).toString(),entry.getColumnValues().get(1).toString());
options.add(option);
entry = nvec.getNextEntry(entry);
}
group.setSelectItems(options.toArray(new SelectItem[options.size()]));
groupedOptions.add(group);
}
return groupedOptions;
} catch (NotesException e) {
e.printStackTrace();
}
return null;
}
}
答案 0 :(得分:3)
XPages中的组合框是使用HTML select
标签呈现的。如果您在optgroup
中组织选项(另请参阅Populating selectItems of the combobox (label, value) using a managed bean),则可以立即使用一些默认样式。示例here。
您甚至可以通过定位optgroup
来使用标准CSS在其上应用其他样式。但是对此的支持是有限的:例如,它不适用于iPad。
如果您想进一步控制下拉菜单的外观,建议您使用Select2之类的插件。