所以我的团队有一个jsf并且我们使用EL语句读取输入框的值,工作正常,但默认情况下我们将值设置为应填入字段的值.如何在仍然使EL语句工作的同时为输入设置默认值.例:
<h:inputText value="#{registrationBean.firstName}" styleClass="formEle"/>
Run Code Online (Sandbox Code Playgroud)
我试过了
<h:inputText value="#{registrationBean.firstName}First Name" styleClass="formEle"/>
Run Code Online (Sandbox Code Playgroud)
但是当我们提交时,这会破坏连接.有任何想法吗?
Bal*_*usC 14
你正在寻找一种被称为"水印"或"占位符"的东西.在低级别,这些天通常由HTML5 placeholder属性完成:
<input type="text" placeholder="First Name" />
Run Code Online (Sandbox Code Playgroud)
这当然仅适用于支持HTML5的浏览器,然后仅适用于支持新HTML5属性的JSF组件.标准的JSF <h:inputText>本身不支持这个(尚未).您需要寻找支持此功能的第三方组件库.其中包括PrimeFaces <p:watermark>:
<h:inputText id="firstName" value="#{registrationBean.firstName}" />
<p:watermark for="firstName" value="First Name" />
Run Code Online (Sandbox Code Playgroud)
如果由于某种原因使用PrimeFaces不是一个选项,你需要自己重新发明它自定义组件和/或自定义JS/jQuery的味道,就像<p:watermark>在幕后做的那样.
| 归档时间: |
|
| 查看次数: |
30636 次 |
| 最近记录: |