这是我们的第一个JSF应用程序,我正在将我们的图形设计器的CSS集成到我们的facelets文件中.他告诉我他需要输入标签的name和id属性与label标签的for属性相同.
他的要求:
<label for="username">User Name:</label>
<input id="username" type="text" name="username" />
Run Code Online (Sandbox Code Playgroud)
但是,当JSF代码呈现HTML时,我会在这些属性中获得额外的标识符.
我的facelet代码:
<label for="username">User Name:</label>
<h:inputText value="#{login.username}" id="username" name="username" />
Run Code Online (Sandbox Code Playgroud)
发送到浏览器的最终XHTML:
<label for="username">User Name:</label>
<input id="j_id2:username" type="text" name="j_id2:username" />
Run Code Online (Sandbox Code Playgroud)
从JSF的角度来看,这对我来说很有意义,但有没有办法让我满足我们的平面设计师的要求并让每个人都开心?或者这是一个糟糕的JSF监督?
谢谢!
您可以使用JSF outputLabel标记,该标记应自动处理ID:
<h:inputText id="username">
<h:outputLabel for="username" value="User Name: "/>
</h:inputText>
Run Code Online (Sandbox Code Playgroud)
编辑:为避免混淆:您还可以将outputLabel放在inputText元素之外.我只是喜欢这样使用它.
| 归档时间: |
|
| 查看次数: |
1573 次 |
| 最近记录: |