2016-12-12 6 views
1

CommandLinksが動作していないという点についてはすでに「すべて」の問題を読んでいますが、私には当てはまりません。うまくいけば別の解決策があります。htmlCommandLinkは初めての動作です

私はa4j:htmlCommandLinkを持っていますが、これは初めてクリックされたときのみ機能します。 a4j:outputPanelのreRenderをトリガーするページの他の部分をクリックすると、クリックするたびに動作します。

<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> 

私がクリックしたときに(reRenderを実行する前に)2度目の動作はなぜですか?

UPDATE これは動作します:

<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> 

答えて

0

これはJSF 1.2のバグであるならば、私は知りませんが、それはそのa4jようだ:私はhtmlCommandLinkを最初にクリックした後outputPanelは表示されません時間。

私はa4j:supportを追加しました。 onclickイベントでは、reRendersの結果が返されます。上記のコードを更新しました。

htmlCommandLinkがクリックされるたびに、「results」outputPanelが再レンダリングされます。そして、それは動作します。 :)

関連する問題