2011-07-28 11 views

答えて

1

標準のJSF + A4Jアプローチを使用して行うことはできないようです。 iframeの内容はビューを分離する別のリクエストによって作成されるため、独自のJSFコンポーネントツリーがあります。したがってa4j:commandButtona4j:outputPanelは異なるビュー(異なるコンポーネントツリー)にあり、「クロスツリー」再レンダリングを行うことはできません。

iframeから親ページにアクセスするには、JavaScriptを使用できます。例えば

このように、親ページjsFunctionに置く:

<a4j:jsFunction name="reRenderPanel" reRender="panelId"/> 

とiframe内のcommandButtonにはJavaScriptのonclick次の行を追加します。

<a4j:commandButton onclick="parent.reRenderPanel();"/> 
+0

は 'parent.reRenderPanel()である;'作り付け関数? –

+0

親は親ページのインスタンスを取得するためのもので、reRenderPanelはjsFunctionの名前= "reRenderPanel" – Andrey

関連する問題