我在JSF页面中有一个<rich:dataTable>
。
<rich:dataTable id="transactionTable" rendered="#{tellerBean.userTransactions.size() > 0}"
value="#{tellerBean.userTransactions}" var="transaction">
当我按下搜索按钮时,支持列表会被填充,我会重新渲染表格。但是这不起作用,因为rendered
属性是服务器端,并且网格从未首先转换为HTML,因此重新呈现失败。如何在后备列表为0大小时隐藏网格,并在列表大小为> 0时显示。 0?
答案 0 :(得分:1)
将其包装在一个始终呈现的组件中,然后更新它。
<h:panelGroup id="transactionTableGroup">
<rich:dataTable ... rendered="#{not empty tellerBean.userTransactions}">
</rich:dataTable>
</h:panelGroup>
(请注意,我也改进了rendered
属性中的EL表达式;你的笨拙并且在使用Facelets而不是遗留JSP时只会产生XML语法错误