您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何比较2个字符串 ?

如何比较2个字符串 ?

您似乎在<h:dataTable>。JSTL标签仅在视图构建时评估,而不在视图渲染时评估。归结为:JSTL首先从上到下运行,然后将产生的结果移交给JSF,再从上到下运行。目前,在JSF数据表中评估JSTL标记var,JSTL无法使用该数据表的迭代项(in 属性)。因此,测试结果始终为false

只需使用JSF组件的rendered属性即可。

<h:outputText value="#{recordTable[column.property]}" rendered="#{column.header ne 'Details'}"/>
<h:commandLink value="#{column.header}" rendered="#{column.header eq 'Details'}" action="#{searchBean.goToWarehouse}"/>
<br/>

以下是一些更多示例,说明如何利用该rendered属性

<h:someComponent rendered="#{bean.booleanValue}" />
<h:someComponent rendered="#{bean.intValue gt 10}" />
<h:someComponent rendered="#{bean.objectValue == null}" />
<h:someComponent rendered="#{bean.stringValue != 'someValue'}" />
<h:someComponent rendered="#{!empty bean.collectionValue}" />
<h:someComponent rendered="#{!bean.booleanValue and bean.intValue != 0}" />
<h:someComponent rendered="#{bean.enumValue == 'ONE' or bean.enumValue == 'TWO'}" />

与具体问题无关,Rosindia 不是最佳的JSF学习资源。我建议前往其他资源。

其他 2022/1/1 18:14:31 有540人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶