1

以下のようなコードでは、カーソルを列ヘッダーの上に置いたときにタイトルが表示されません。何か案は?

        <h:column title="COLUMN 1">
            <f:facet name="header" >COL 1</f:facet>
            <h:outputText id="col1" value="#{oneEntry.col1}" styleClass="al"/>
        </h:column>

        <h:column title="COLUMN 2">
            <f:facet name="header" >COL 2</f:facet>
            <h:outputText id="col2" value="#{oneEntry.col2}" styleClass="al"/>
        </h:column>
4

2 に答える 2

0

JSF は HTML 4.0 パススルー属性を単なる要素として生成するため、この<h:column>タグには HTML 4.0 パススルー属性がありません。<td>HTML では、テーブルは行内の<td>要素で構成され、列は行内で暗黙的に定義されます。

したがって、すべての行の特定<td>の要素ごとに title 属性を指定するのが好きです。

<table border="1">
  <tr>
   <td title="first">Cell A1</td>
   <td>Cell B1</td>
  </tr>
  <tr>
   <td title="first">Cell A2</td>
   <td>Cell B2</td>
  </tr>
</table>

したがって、HTML で列の全体的なタイトルを指定するようなもの<table>はありません。 タグのタイトルは<h:dataTable>.

または、次のように、その列内のコンポーネントにタイトルを追加して、個々のデータ セルにタイトルを付けることができます。

<h:column>
      <f:facet name="header" >COL 1</f:facet>
      <h:outputText id="col1" value="#{oneEntry.col1}" styleClass="al"  title="COLUMN 1"/>
</h:column>

 <h:column>
      <f:facet name="header" >COL 2</f:facet>
      <h:outputText id="col2" value="#{oneEntry.col2}" styleClass="al" title="COLUMN 2"/>
</h:column>

<span>これは、title 属性を持つ outputText の値を含むを生成します。

于 2012-08-09T05:02:16.340 に答える