web-dev-qa-db-ja.com

どのjsfコンポーネントがdivタグをレンダリングできますか?

例:h:inputText"input type='text'"をレンダリングします。どのjsfタグが"div"タグをレンダリングできますか?

123
user101442

<h:panelGroup/>を使用してDIVコンポーネントを作成できます。デフォルトでは、<h:panelGroup/>はHTMLコードにSPANを生成します。

ただし、layout="block"を指定すると、コンポーネントは生成されたHTMLコードのDIVになります。

<h:panelGroup layout="block"/>
222
Romain Linsolas

JSF 2.2では、passthrough要素を使用できます。

<html xmlns="http://www.w3.org/1999/xhtml"
  xmlns:jsf="http://xmlns.jcp.org/jsf">
    ...
    <div jsf:id="id1" />
    ...
</html>

要件は、jsf名前空間を使用して、要素に少なくとも1つの属性を持つことです。

15
mp31415

<h:panelGroup>コンポーネント(これには少し驚いています)以外に、<f:verbatim>タグを使用し、エスケープパラメーターをfalseに設定してマークアップを生成できます。欲しいです。例えば:

<f:verbatim escape="true">
    <div id="blah"></div>
</f:verbatim>

JSFコードのいずれかをpanelGroupタグでラップする場合は、開始タグと終了タグの両方に対してこれを生成する必要があるため、divソリューションよりも少しエレガントではないことに注意してください。

あるいは、すべての主要なUIフレームワークにはdivコンポーネントタグがありますが、独自のタグを作成することもできます。

13
Nick Grubb

myfaces tomahawkコンポーネントを使用できます

http://myfaces.Apache.org/tomahawk-project/tomahawk12/tagdoc/t_div.html

3
jack jin