<h:outputtext>即使在ajax update </h:outputtext>之后也呈现旧值

时间:2014-10-01 08:48:45

标签: jsf facelets

在下面的代码中,我单击“提交”按钮。通过boolean调用将result true值更改为backing_home bean中的ajax

如果删除渲染的rendered="#{backing_home.result}",我会正确看到更新的输出。 但是使用以下代码,它是false。我认为它不会呈现新值

<h:commandButton id="MySubmit" value="Submit" action="#{backing_home.toggleRenderResult}">
   <f:ajax render=":AjaxGuess:result2"/>
</h:commandButton>
<h:outputText id="result2" value="#{backing_home.result}" rendered="#{backing_home.result}" />

可能是什么原因?

1 个答案:

答案 0 :(得分:0)

我根据Hatem Alimam的评论更新了以下代码。

<h:commandButton id="MySubmit" value="Submit" action="#{backing_home.toggleRenderResult}">
   <f:ajax render=":AjaxGuess:result2"/>
</h:commandButton>
<h:panelGroup id="result2">
  <h:outputText value="#{backing_home.result}" rendered="#{backing_home.result}" />
</h:panelGroup>