itVincent Blog - Java Working Fun!

技术引领时代!
posts - 117, comments - 181, trackbacks - 0, articles - 12

JSF html标签(1)

Posted on 2007-04-27 14:23 itVincent 阅读(3134) 评论(1)  编辑  收藏 所属分类: JSF
 

JSF html标签

Jsf提供了一套标准的html标签。可以让您搭配JSF组件输出HTML文件,标准的HTML Renderer Kit主要包括了几个类别:

  • 输出(Outputs 其名称以output作为开头,作用为输出指定的信息或绑定值。
  • 输入(Inputs 其名称以input作为开头,其作用为提供使用者输入字段。
  • 命令(Commands 其名称以command作为开头,其作用为提供命令或链接按钮。
  • 选择(Selections 其名称以select作为开头,其作用为提供用户选项的选取。
  • 表格 Table dataTable相关,用于生成表格
  • 其它 包括了formmessagemessagesgraphicImage等等未分类的标签。

 

属性名称

适用

说明

id

所有组件

可指定id名称,以让其它标签或组件参考

binding

所有组件

绑定至UIComponent

rendered

所有组件

是否显示组件

styleClass

所有组件

设定Cascading stylesheet (CSS)

value

输入、输出、命令组件

设定值或绑定至指定的值

valueChangeListener

输入组件

设定值变事件处理者

converter

输入、输出组件

设定转换器

validator

输入组件

设定验证器

required

输入组件

是否验证必填字段

immediate

输入、命令组件

是否为立即事件

 

 

输出类的标签包括了outputLabeloutputLinkoutputFormat outputText

分别举例说明如下:

  • outputLabel

产生<label> HTML标签,使用for属性指定组件的client ID,例如:

 <h:inputText id="user" value="#{user.name}"/>
 <h:outputLabel for="user" value="#{user.name}"/>

 
这会产生像是以下的html
 <input id="user" type="text" name="user" value="guest" />
 <label for="user">

 

  • outputLink

产生<a> HTML标签,例如:
 <h:outputLink value="../index.jsp"/>
 

value
所指定的内容也可以是JSF EL绑定。

 

  • outputFormat

产生指定的文字信息,可以搭配<f:param>来设定信息的参数以格式化文本信息,例如:
 <f:loadBundle basename="messages" var="msgs"/>
 <h:outputFormat value="#{msgs.welcomeText}">
     <f:param value="Hello"/>
     <f:param value="Guest"/>
 </h:outputFormat>

 
如果您的messages.properties包括以下的内容:
 welcomeText={0}, Your name is {1}.
 
{0}{1}会被取代为<f:param>设定的文字,最后显示的文字会是:
 Hello, Your name is Guest.
 
另一个使用的方法则是:
 <h:outputFormat value="{0}, Your name is {1}.">
     <f:param value="Hello"/>
     <f:param value="Guest"/>
 </h:outputFormat>

 

  • outputText

简单的显示指定的值或绑定的信息,例如:
 <h:outputText value="#{user.name}"/>

 

 

 

输入类标签包括了inputTextinputTextareainputSecret inputHidden

分别举例说明如下:

  • inputText

显示单行输入字段,即输出<input> HTML标签,其type属性设定为text,例如:

 <h:inputText value="#{user.name}"/>

 

  • inputTextarea

显示多行输入文字区域,即输出<textarea> HTML标签,例如:

 <h:inputTextarea value="#{user.command}"/>

 

  • inputSecret

显示密码输入字段,即输出<input> HTML标签,其type属性设定为password,例如:
 <h:inputSecret value="#{user.password}"/>
 
您可以设定redisplay属性以决定是否要显示密码字段的值,默认是false

 

  • inputHidden

隐藏域,即输出<input> HTML标签,其type属性设定为hidden,隐藏域的值用于保留一些信息于客户端,以在下一次发送窗体时一并送出,例如:
 <h:inputHidden value="#{user.hiddenInfo}"/>

 

 

 

Feedback

# re: JSF html标签(1)  回复  更多评论   

2008-01-22 17:49 by 家园
很好的教程,学习了。

只有注册用户登录后才能发表评论。


网站导航: