3

我想为应用程序创建设置面板。应用程序将设置值存储到数据库表中。设置面板将用于显示设置和更改值。我想以这种方式表示值:

在此处输入图像描述

在此处输入图像描述

这样,用户将只能输入固定值。我想改变用户输入自定义值。像这样:

在此处输入图像描述

我想selectOneMenu用选项创建custom。当用户选择customselectOneMenu被替换为inputText他将能够输入自定义值的字段时。SAVE按钮将数据保存到数据库中。这可能没有页面重新加载吗?也许使用 AJAX?

如何实施?

4

2 回答 2

4

用于在当前选项等于 时<f:ajax>显示 a 。<h:inputText>"custom"

<h:selectOneMenu value="#{bean.type}">
    <f:selectItem itemValue="one" itemLabel="Option one" />
    <f:selectItem itemValue="two" itemLabel="Option two" />
    <f:selectItem itemValue="three" itemLabel="Option three" />
    <f:selectItem itemValue="custom" itemLabel="Define custom value" />
    <f:ajax render="input" />
</h:selectOneMenu>
<h:panelGroup id="input">
    <h:inputText value="#{bean.customType}" rendered="#{bean.type == 'custom'}" required="true" />
</h:panelGroup>
于 2012-03-14T20:00:52.033 回答
0

您可以使用 bootstrap select2 类:

<h:selectOneMenu styleClass="form-control input-sm select2"
value="#{myBean.data}" id="data">
</h:selectOneMenu>

                        
于 2021-11-24T13:17:46.103 回答