2016-11-14 1 views
0

をレンダリングするAJAXで作業されていないアクション属性ではありませんAJAXと組み合わされて、なぜはなぜのcommandButtonのaction属性は、こののcommandButtonが機能している

<h:commandButton id="button_updateIt" value="#{i18n.button_update_it}"> 
    <f:ajax event="click" render=":form_2:updateMe" />    
</h:commandButton> 

ワーキング?

<h:commandButton id="button_updateIt" 
    value="#{i18n.button_update_it}" 
    action="#{masterBean.update()}"> 

    <f:ajax event="click" render=":form_2:updateMe" /> 

</h:commandButton> 

あなたはクリックイベントを使用しているのはなぜ私は、JSFバージョン2.1.1およびJava 1.7.0とGlassFish Serverの3.1.2(23ビルド)

答えて

1

を使うのか?そのイベントを使用している場合は、アクションメソッドが呼び出される前にフォームが再レンダリングされます。

イベントタイプを変更するか、commandButtonのアクションではなくf:ajaxクリックイベントでリスナーを使用する必要があります。

<h:commandButton id="button_updateIt" 
    value="#{i18n.button_update_it}" 
    action="#{masterBean.update()}"> 

    <f:ajax render=":form_2:updateMe" /> 

</h:commandButton> 

または

<h:commandButton id="button_updateIt" 
    value="#{i18n.button_update_it}"> 

    <f:ajax event="click" listener="#{masterBean.update()}" 
     render=":form_2:updateMe" /> 

</h:commandButton> 
+0

私は、Javaのアクションとページに表示されるデータの更新を行う方法を知りません。 たとえば、ボタンクリックで何かをダウンロードしています。 エラーがある場合、エラーメッセージがボタンの下に表示されます。 私はリフレッシュする方法を知りません。 –

+0

これにはが必要です。その質問を見てください:http://stackoverflow.com/questions/11029792/error-messages-on-page-with-the-hmessages-in-jsf – lastresort

+0

私はページリフレッシュを回避しました。 [link](http://stackoverflow.com/questions/16483214/how-can-i-reload-the-same-page-from-a-managedbean-in-jsf) イベントのPerhapse =「クリック」複数のオプションをテストした後の間違い。 は良いアイデアのように見えます。次回はテストします。 @lastresortありがとう –

関連する問題