2

私が達成しようとしているのは、コード/HTMLのセクションを取り、それを最終レンダリングに含めるかどうかをJSFに指示できるようにすることです。私はタグをいじりました<ui:remove>が、それは常にコンテンツを削除します.

含めないようにしているものは次のとおりです。

<li><h:commandLink value="Create an Account" action="createUser"/></li>
<li><h:commandLink value="Login" action="login"/></li>

render = true/false に基づいてこれをラップする何かが必要です。div、テーブルなどの肥大化したコードを含めないようにしたい.

4

1 に答える 1

2

あなたの質問を正しく理解していただければ幸いです。これらのコンポーネントをrender属性で試しましたか?

例:

<h:panelGroup rendered="#{bean.display}">
    <li><h:commandLink value="Create an Account" action="createUser"/></li>
    <li><h:commandLink value="Login" action="login"/></li>
</h:panelGroup>

<h:panelGrid rendered="#{bean.display}">
    <li><h:commandLink value="Create an Account" action="createUser"/></li>
    <li><h:commandLink value="Login" action="login"/></li>
</h:panelGrid>

<rich:panel rendered="#{bean.display}">
    <li><h:commandLink value="Create an Account" action="createUser"/></li>
    <li><h:commandLink value="Login" action="login"/></li>
</rich:panel>

「display」は、XHTML コードの可視性を制御するために使用する JavaBean で定義されたブール値のプロパティです。

使用できるもう 1 つのタグは<ui:include>、XHTML コードのセクションが別の .xhtml に入れるのに十分な大きさの場合に、コードを整理するのに役立つ場合があります。

<ui:include src="yourPath.xhtml" rendered="#{bean.display}">
</ui:include>

の場合<ui:remove>、通常は一時的にコードを としてコメントアウトするために使用します<!-- XHTML code -->

于 2013-11-08T16:01:26.090 に答える