Ana*_*man 11 java tree jsf drop-down-menu
我想在JSF的下拉列表中显示一个树状结构.基本上,选择项目在层次结构中,我希望在下拉列表中显而易见.
可能吗 ?
Bal*_*usC 24
那么,你基本上想要一个HTML <optgroup>?使用SelectItemGroup.
JSF bean(我假设JSF 1.x):
private String option; // +getter +setter
private List<SelectItem> options; // +getter
public Bean() {
options = new ArrayList<SelectItem>();
SelectItemGroup group1 = new SelectItemGroup("Group 1");
group1.setSelectItems(new SelectItem[] {
new SelectItem("Group 1 Value 1", "Group 1 Label 1"),
new SelectItem("Group 1 Value 2", "Group 1 Label 2"),
new SelectItem("Group 1 Value 3", "Group 1 Label 3")
});
options.add(group1);
SelectItemGroup group2 = new SelectItemGroup("Group 2");
group2.setSelectItems(new SelectItem[] {
new SelectItem("Group 2 Value 1", "Group 2 Label 1"),
new SelectItem("Group 2 Value 2", "Group 2 Label 2"),
new SelectItem("Group 2 Value 3", "Group 2 Label 3")
});
options.add(group2);
}
Run Code Online (Sandbox Code Playgroud)
JSF视图:
<h:selectOneMenu value="#{bean.option}">
<f:selectItems value="#{bean.options}" />
</h:selectOneMenu>
Run Code Online (Sandbox Code Playgroud)
生成的HTML示例:
<select name="j_idt6:j_idt7" size="1">
<optgroup label="Group 1">
<option value="Group 1 Value 1">Group 1 Label 1</option>
<option value="Group 1 Value 2">Group 1 Label 2</option>
<option value="Group 1 Value 3">Group 1 Label 3</option>
</optgroup>
<optgroup label="Group 2">
<option value="Group 2 Value 1">Group 2 Label 1</option>
<option value="Group 2 Value 2">Group 2 Label 2</option>
<option value="Group 2 Value 3">Group 2 Label 3</option>
</optgroup>
</select>
Run Code Online (Sandbox Code Playgroud)
它在浏览器中的样子:

| 归档时间: |
|
| 查看次数: |
8532 次 |
| 最近记录: |