是否可能有p:selectOneMenu的占位符文本? [英] Is it possible to have a placeholder text for p:selectOneMenu?
本文介绍了是否可能有p:selectOneMenu的占位符文本?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的问题几乎说明了一切.我想在selectOneMenu中有一个占位符文本,但我认为没有任何属性可以指定它.那么怎么可能有一个占位符?
My question pretty much says everything. I want to have a placeholder text in the selectOneMenu, but I don't think there is any attribute to specify it. So how is it possible to have a placeholder?
我尝试使用<p:watermark>
,如下所示,但是没有用.
I tried using a <p:watermark>
as shown below, but it did not work.
<p:selectOneMenu id="fooMenu">
<f:selectItem itemLabel="foo" itemValue="foo"/>
<f:selectItem itemLabel="goo" itemValue="goo"/>
</p:selectOneMenu>
<p:watermark value="Select" for="fooMenu"></p:watermark>
推荐答案
默认情况下,标准HTML <select>
元素确实不支持它,因此JSF中也没有设置它的方法.
It's indeed by default not supported on standard HTML <select>
element, so there's also nothing in JSF to set that.
但是,您可以在itemDisabled
以及一些CSS和jQuery的帮助下模拟.
You can however simulate one with help of itemDisabled
and a little bit of CSS and jQuery.
<p:selectOneMenu widgetVar="menu" styleClass="with-placeholder" panelStyleClass="hide-disabled" onchange="menu.jq.removeClass('with-placeholder')">
<f:selectItem itemLabel="Select" itemDisabled="true" />
<f:selectItem itemLabel="foo" itemValue="foo"/>
<f:selectItem itemLabel="goo" itemValue="goo"/>
</p:selectOneMenu>
和
.ui-selectonemenu.with-placeholder .ui-selectonemenu-label {
color: #ccc;
}
.ui-selectonemenu-panel.hide-disabled .ui-selectonemenu-list-item.ui-state-disabled {
display: none;
}
这是一个视频演示.
这篇关于是否可能有p:selectOneMenu的占位符文本?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文