可编辑 p:selectOneMenu

Editable p:selectOneMenu

如何在可编辑中设置占位符<p:selectOneMenu>

在 PrimeFaces 的可编辑 <p:selectOneMenu> 中,初始 UI 如下所示:

http://www.primefaces.org/showcase/ui/input/oneMenu.xhtml (查看可编辑菜单)

有没有办法放置一个占位符来表示像 "Click to enter manual input" 这样的文本,或者让用户知道这个下拉列表是可编辑的。 找到下面的代码片段以供参考。

<div class="setupDataSection">
    <div class="pageCenter pageCenterShortened">
        <div style="float: left;" class="sectionTitle sectionTitleInline">
            <h:outputLabel value="Tenant "/>
        </div>
        <div style="float: left; padding-left: 40px;">

            <p:selectOneMenu id="tenant"
                             styleClass="ddlPOS"
                             style="width: 190px;"
                             label="Tenant"
                             value="#{onBoardingAction.selTenant}"
                             editable="true">

                <p:watermark for="tenant"
                             value="Search with a keyword"
                             id="watermark" />

                <f:selectItem itemLabel="Add new tenant" />
                <f:selectItems value="#{onBoardingAction.tenants}" />

                <p:ajax event="change"
                        execute="@this"
                        update="tenant region POS"
                        listener="#{onBoardingAction.settingRegions()}" />
            </p:selectOneMenu>
        </div>
    </div>
</div>

Primefaces称之为水印SEE,如果你的SelectOneMenu是空的,这个water martk的文字会自动出现

<p:watermark for="fileSize" value="Search with a keyword" id="watermark" />

更新 我已经测试了你的代码,如果你使用模板,它对我来说工作正常,也许你的 CSS 覆盖组件试试这个,我只是把 p:watermark 放在组件代码之外:

            <f:selectItem itemLabel="Add new tenant" />
            <f:selectItems value="#{onBoardingAction.tenants}" />

            <p:ajax event="change"
                    execute="@this"
                    update="tenant region POS""
                    listener="#{onBoardingAction.settingRegions()}" />
        </p:selectOneMenu>

         <p:watermark for="tenant"
                         value="Search with a keyword"
                         id="watermark" />

希望解决 :)