Jsf 2 呈现ui:带有ajax事件的片段
我试图找出如何使用标记ui:fragment实现这一点。我正在使用JSF2.2和RichFaces4 我有一个组合,当我选择一个值时,我想在ui:fragment中显示或隐藏所选值的函数中的代码 组合: 我想我错过了一些非常愚蠢的事情,但我看不出来Jsf 2 呈现ui:带有ajax事件的片段,jsf-2,richfaces,Jsf 2,Richfaces,我试图找出如何使用标记ui:fragment实现这一点。我正在使用JSF2.2和RichFaces4 我有一个组合,当我选择一个值时,我想在ui:fragment中显示或隐藏所选值的函数中的代码 组合: 我想我错过了一些非常愚蠢的事情,但我看不出来 谢谢 我手头没有规范问题,但这是一个典型的示例,说明您需要呈现一个已经存在于HTML或JSF中的id,但找不到要更新的目标。请尝试重新呈现ui:fragment的父组件或引入一个。可能是@mabi的重复项。您是对的。我在这个片段中添加了一个父组件,并
谢谢 我手头没有规范问题,但这是一个典型的示例,说明您需要呈现一个已经存在于HTML或JSF中的id,但找不到要更新的目标。请尝试重新呈现ui:fragment的父组件或引入一个。可能是@mabi的重复项。您是对的。我在这个片段中添加了一个父组件,并渲染了这个组件,然后它工作了!非常感谢。
<rich:select id="mycombo" valueChangeListener="#{controller.comboChangeListener}"
selectFirstOnUpdate="false" value="#{controller.myComboValue}">
<f:selectItems value="#{controller.getValues}" var="object" itemLabel="#{object.label}" itemValue="#{object.id}"/>
<a4j:ajax event="selectitem" render="myHiddenFragment" />
</rich:select>
<ui:fragment rendered="#{controller.isMyValueSelected}" id="myHiddenFragment">
<!-- Lots of things going on here -->
</ui:fragment>
private boolean isMyValueSelected = false;
public void comboChangeListener(final ValueChangeEvent event) {
if (event.getNewValue().equals(IConstantes.ID_THIS_VALUE)) {
this.isMyValueSelected = false;
} else {
this.isMyValueSelected = true;
}
}