html表格行的行计数器
我在JSFWeb应用程序中有HTML表。我正在使用html表格行的行计数器,html,jsf,richfaces,jstl,Html,Jsf,Richfaces,Jstl,我在JSFWeb应用程序中有HTML表。我正在使用动态生成行。我每行要一个柜台。我怎么能得到这个?有什么帮助吗 与rich faces dataTable中的rowKeyVar类似。使用ui:repeat无法很好地完成此操作,但可以使用h:dataTable完成此操作。将组件绑定到支持bean中的属性。它有一种方法,可以完全满足您的需要: <h:dataTable binding="#{bean.table}" value="#{bean.list}" var="item">
动态生成行。我每行要一个柜台。我怎么能得到这个?有什么帮助吗
与rich faces dataTable中的rowKeyVar类似。使用
ui:repeat
无法很好地完成此操作,但可以使用h:dataTable
完成此操作。将组件绑定到支持bean中的属性。它有一种方法,可以完全满足您的需要:
<h:dataTable binding="#{bean.table}" value="#{bean.list}" var="item">
<h:column><h:outputText value="#{bean.table.rowIndex + 1}" /></h:column>
<h:column><h:outputText value="#{item.someProperty}" /></h:column>
<h:column><h:outputText value="#{item.otherProperty}" /></h:column>
</h:dataTable>
ui中的每一行都没有计数器:重复。正如BalusC所说,您可以选择h:datatable。另一个想法是,您可以间接地在bean中为服务器端列表中的每个对象添加一个额外的索引方法,并在jsf中获得该方法并对其进行操作。因为您使用的是richfaces,所以可以使用它的迭代标记(
),这比使用
更合适,这就像是
从Facelets 2.0开始,现在可以使用
varStatus
<ui:repeat varStatus="status" var="user" value="#{collection}">
#{status.index}
</ui:repeat>
#{status.index}
一个坏主意(或好主意)是使用JavaScript来实现这一目的
<script>
var numberOfIndex = 0;
</script>
<ui:repeat value="#{modelBean.listUser}" var="item">
<tr>
<td><script>numberOfIndex -=-1;document.write(numberOfIndex);</script></td>
<td>${item.id}</td>
<td>${item.name}</td>
</tr>
</ui:repeat>
var numberOfIndex=0;
numberOfIndex-=-1;文件。写入(编号索引);
${item.id}
${item.name}
我将尝试第二种方法。c:forEach。感谢您,c:forEach
的主要缺点是无法轻松使用表中的输入组件。使用h:dataTable
可以轻松创建一个可编辑的dataTable,JSF将完全自行管理所有数据的收集和更新。
<ui:repeat varStatus="status" var="user" value="#{collection}">
#{status.index}
</ui:repeat>
<script>
var numberOfIndex = 0;
</script>
<ui:repeat value="#{modelBean.listUser}" var="item">
<tr>
<td><script>numberOfIndex -=-1;document.write(numberOfIndex);</script></td>
<td>${item.id}</td>
<td>${item.name}</td>
</tr>
</ui:repeat>