4

最近、すべての豆を からRequestScopedに変更しましたViewScoped。突然、ダイアログの遅延読み込みが機能しなくなりました。私はPrimeFacesJSFライブラリを使用しています。

<html>
<h:body>
<f:view>    
    <h:form>
        <p:commandButton id="addId" value="Add" title="Add" type="button" onclick="dlgMultiFileSelect.show();"/>
        ...
    </h:form>    
    <p:dialog header="Dialog" widgetVar="dlgMultiFileSelect" modal="true" resizable="true" dynamic="true"> 
        <ui:include src="/dialogs/media_browser.xhtml"/>
    </p:dialog>
</f:view>   
</h:body>
</html>

ボタンがクリックされたときではなくdynamic="true"、バッキングビーンがすぐに初期化されるため、機能しないようです。media_browser.xhtml

私は何か間違ったことをしていますか?

PrimeFaces 3.5.0 を使用。

4

2 に答える 2

0

Facelet タグ ui:include はサイクルの早い段階で処理されるため、初期化されます。ボタンのクリック時にダイアログの内容を更新する場合は、commandButton で update="id of the dialog" を使用して行う必要があります。ページが最初にロードされないように、ui:include に使用できます。

于 2013-05-17T10:10:37.763 に答える