0

可能吗?如果是,我该怎么做?

我需要在执行操作<h:outputText>后重新渲染 a <a4j:commandLink>,两个组件都在模态面板内,而模态面板在我尝试过的 a 内:

<a4j:commandLink value="somevalue" id="someid" action="#{MyBean.myAction()}"
    reRender="outputtextid">
    <f:param name="paramid" value="paramvalue"/>
</a4j:commandLink>
4

1 回答 1

0

确保您<h:outputText>在包含 的表单之外,<a4j:commandLink>否则它将 outputText 的值与表单中的实际值绑定,从而导致页面中出现奇怪的行为。

<h:form>
    <a4j:commandLink value="somevalue" id="someid" action="#{MyBean.myAction()}"
        reRender="outputtextid">
        <f:param name="paramid" value="paramvalue"/>
    </a4j:commandLink>
</h:form>
<h:outputText value="#{MyBean.outputValue}" id="outputtextid" />

如果您必须拥有<h:outputText>表单内部,则应考虑使用oncomplete执行 JavaScript 代码的 commandLink 中的 tag 属性更新值。

如果您想向用户显示消息,可以使用<h:messages><rich:messages>标记组件,这将是比使用 outputText 更好的选择。

于 2012-08-14T19:04:35.520 回答