JSF h:dataTable标记

它用于创建数据表。可以动态更新的表。
标签属性

属性 描述
id 这是必填标记, 用于分配组件的ID, 以便组成该消息。
class 它表示此组件的CSS类。
lang 用于设置此组件的语言。
bgcolor 用于设置此表的背景色。
binding 这是一个ValueExpression, 它将此组件链接到后备bean中的属性。
bodyrows 这是用逗号分隔的行索引列表, 应为其启动新的“ tbody”元素。
border 它用于设置要在此表格周围绘制的边框宽度。
captionClass 它用于CSS样式类的以空格分隔的列表, 这些列表将应用于为此表生成的任何标题。
captionStyle 用于为该组件的标题设置CSS样式。渲染组件时将应用此样式。
cellpadding 它用于定义用户应在每个单元格的边框与其内容之间留多少空间。
cellspacing 它用于定义用户应该在表格的左侧和最左侧的列之间, 表格的顶部与最上方的行的顶部之间保留多少空间, 依此类推。它还指定了单元格之间要保留的空间量。
columnClasses 它用于设置将以逗号分隔的CSS样式类列表, 这些列表将应用于此表的列。
dir 它用于不继承方向性的文本。有效值为“ LTR”(从左到右)和“ RTL”(从右到左)。
first 它是要显示的第一行的零相对行号。如果将此属性设置为零, 则呈现将从基础数据的第一行开始。
footerClass 它包含以空格分隔的CSS样式类列表, 该列表将应用于为此表生成的任何页脚。
frame 用于设置框架。指定此表格周围框架的哪一侧可见的代码。有效值为:无(无边, 默认值);无。上方(仅顶部);下方(仅底部);侧面(仅顶部和底部);侧边(仅左右); lhs(仅左侧); rhs(仅右侧);盒子(所有四个侧面);和边框(所有四个侧面)。
headerClass 用于设置标头类。 CSS样式类的以空格分隔的列表, 该列表将应用于为此表生成的任何标头。
rowClasses 用于设置行的CSS类。逗号分隔的CSS样式类列表, 将应用于此表的行。
rows 它用于设置要显示的行数。从“第一个”属性标识的那个开始。如果将此值设置为零, 则将显示基础数据模型中的所有可用行。
summary 它用于获取此表的目的和结构的摘要, 以供用户渲染到非可视媒体(例如语音和盲文)。
title 它用于设置有关为此组件生成的标记元素的咨询标题信息。
JSF < h:dataTable> 标记示例 // index.xhtml
< h:body> < h2> < h:outputText value="http://www.srcmini.com/Product List"> < /h:outputText> < /h2> < h:dataTable value="http://www.srcmini.com/#{product.productList}" var="p"> < h:column> < f:facet name="header"> ID< /f:facet> < h:outputText value="http://www.srcmini.com/#{p.id}"/> < /h:column> < h:column> < f:facet name="header"> Name< /f:facet> < h:outputText value="http://www.srcmini.com/#{p.name}"/> < /h:column> < h:column> < f:facet name="header"> Price< /f:facet> < h:outputText value="http://www.srcmini.com/#{p.price}"/> < /h:column> < /h:dataTable> < /h:body>

【JSF h:dataTable标记】// Product.Java
public class Product { private final int id; private final String name; private final float price; public Product(int id, String name, float price) { this.id = id; this.name = name; this.price = price; } public int getId() { return id; } public String getName() { return name; } public float getPrice() { return price; } }

// DataTable.java
import java.util.List; import java.util.ArrayList; import javax.faces.bean.ManagedBean; import javax.faces.bean.RequestScoped; @ManagedBean(name = "product") @RequestScoped public class DataTable { public List< Product> productsList; public List< Product> getProductList() { productsList = new ArrayList< > (); productsList.add(new Product(1, "HP Laptop", 25000f)); productsList.add(new Product(2, "Dell Laptop", 30000f)); productsList.add(new Product(3, "Lenevo Laptop", 28000f)); productsList.add(new Product(4, "Sony Laptop", 28000f)); productsList.add(new Product(5, "Apple Laptop", 90000f)); return productsList; } }

输出:
JSF h:dataTable标记

文章图片

    推荐阅读