【问题标题】:htmlCommandLink only works first timehtmlCommandLink 仅在第一次工作
【发布时间】:2016-12-12 14:38:36
【问题描述】:

我已经阅读了有关无法使用 CommandLinks 的“所有”其他问题,但没有一个适用于我,希望有其他解决方案。

我有一个 a4j:htmlCommandLink,它只在第一次被点击时才起作用。 如果我单击页面上触发 a4j:outputPanel 重新渲染的其他位置,那么每次单击时它都会起作用。

<a4j:outputPanel rendered="true" id="results">
<a4j:form id="csv-form">
<a4j:htmlCommandLink title="Export" action="#{bean.export()}" value="Export CSV" id="csv-link"/>
</a4j:form>
<a4j:form id="other-form">
<a4j:commandLink value="Test" action="#{bean.action()}" reRender="results" title="Test">
</a4j:form>
</a4j:outputPanel>

为什么在我第二次点击(在我重新渲染之前)时它不起作用?

更新 这有效:

<a4j:form id="csv-form">
<a4j:htmlCommandLink title="Export" action="#{bean.export()}" value="Export CSV" id="csv-link"/>
<a4j:support event="onclick" reRender="results"></a4j:support>
</a4j:form>

【问题讨论】:

    标签: jsf-1.2


    【解决方案1】:

    我不知道这是否是 JSF 1.2 中的错误,但我第一次单击 htmlCommandLink 后似乎没有呈现 a4j:outputPanel。

    我添加了一个 a4j:support。在 onclick 事件中,它会重新渲染结果。我已经更新了上面的代码。

    每次单击 htmlCommandLink 时,都会重新渲染“结果”输出面板。它有效。 :)

    【讨论】:

      猜你喜欢
      • 2016-02-17
      • 2017-09-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多