以前にfalseに設定されたレンダリングオプションのためにレンダリングされていないJSFコンポーネントにAjax「更新」コマンドを送信できますか?
render="#{BackingBean.doRender}"
doRenderはtrue
、「update」が送信される直前に設定されます。
これは正しい方法ですか?
PrimeFacesを使用していますが、その間にtrueに設定してupdate
も、1つのコンポーネントが表示されません。doRender
以前にfalseに設定されたレンダリングオプションのためにレンダリングされていないJSFコンポーネントにAjax「更新」コマンドを送信できますか?
render="#{BackingBean.doRender}"
doRenderはtrue
、「update」が送信される直前に設定されます。
これは正しい方法ですか?
PrimeFacesを使用していますが、その間にtrueに設定してupdate
も、1つのコンポーネントが表示されません。doRender
ajaxの更新は、JavaScriptによってJSFで生成されたHTML DOMツリーで機能します(Webブラウザーが取得したとおり)。JSFコンポーネントがレンダリングされていない場合、そのコンポーネントはHTML DOMツリーにまったく表示されないため、JavaScriptは更新するものを見つけることができません。
代わりに、常にレンダリングされる親コンポーネントを更新する必要があります。
例えば
<h:panelGroup id="foo">
<h:someComponent rendered="#{bean.rendered}" />
</h:panelGroup>
と
<p:commandButton ... update="foo" />