我正在使用 JSF 2.2,我想知道是否有一种方法可以仅在验证通过时使用 ajax 有条件地呈现组件。通过使用 ajax 的 render 属性,无论验证是否通过,组件都将被渲染。我所追求的是这样的:
<f:ajax ... render="#{validationHasPassed ? 'foo' : ''}" />
...
<h:panelGroup id="foo">
<!-- other components here -->
</h:panelGroup>
是否可以以类似的方式有条件地渲染组件?在我的情况下,我不想在片段中包含渲染属性并将其设置为 true 或 false,因为如果验证失败,这会使片段在 DOM 中根本不存在。我可能有特定的 css 样式,例如在与页面交互后通过 jQuery 获取的 panelGroup 内的组件中,如果验证失败,我不想呈现该部分,以便它可以保持当前的视觉状态.