【发布时间】:2010-09-17 16:59:57
【问题描述】:
我们有以下丰富的:ComponentControl:
<rich:componentControl event="onRowClick" for="ctxMenu" operation="show">
<f:param value="#{item.hasDocuments}" name="hasDocuments" />
</rich:componentControl>
#{item.hasDocuments} 的值已成功从 bean 传递为 true 或 false。
这是应该有条件地显示项目的 contextMenu:
<rich:contextMenu id="ctxMenu" submitMode="ajax" attached="false">
<rich:menuItem ajaxSingle="true" value="View Documents oncomplete="#{rich:component('documentsMenu')}.doShow(event, {})" reRender="documentsMenu" rendered="#{hasDocuments}">
<a4j:actionparam name="selectedApplicationId" value="#{applicationId}" assignTo="#{activeAppsForm.applicationId}" />
</rich:menuItem>
</rich:contextMenu>
问题在于它总是隐藏链接,即使 {hasDocuments} 为真。 我的猜测是 {hasDocuments} 的值被视为字符串而不是布尔值,因此渲染将始终为假。
关于如何解决这个问题的任何想法?
【问题讨论】:
-
您应该更新您的问题以修复 EL 语法错误以避免红鲱鱼。
-
更新了问题。关于如何解决此问题的任何其他想法?