2016-09-15 6 views
0

Я использую RichFaces 4, и мне нужно объединить две строки в таблице центра, такие как:Объединить Ряды Динамически в RichFaces таблице Центр

+---+---+-------+ 
| | | | | 
|---| |-------+ 
| | | | | 
+---+---+-------+ 

Я попытался, используя следующий код:

 <rich:column > 
      <f:facet name="header"> 
       <h:outputText value="col 1" /> 
      </f:facet> 
      <h:outputText value="val 1" /> 
     </rich:column> 

     <rich:column breakRowBefore="true"> 
      <h:outputText value="Val 2" /> 
     </rich:column> 

     <rich:column rowspan="2"> 
      <f:facet name="header"> 
       <h:outputText value="Col 2" /> 
      </f:facet> 
      <h:outputText value="Val 2" /> 
     </rich:column> 

     <rich:column> 
      <f:facet name="header"> 
       <h:outputText value="Col 3" /> 
      </f:facet> 
      <h:outputText value="Val 3" /> 
     </rich:column> 

     <rich:column breakRowBefore="true"> 
      <h:outputText value="Val 4" /> 
     </rich:column> 

     <rich:column> 
      <f:facet name="header"> 
       <h:outputText value="Col 4" /> 
      </f:facet> 
      <h:outputText value="Val 5" /> 
     </rich:column> 

     <rich:column breakRowBefore="true"> 
      <h:outputText value="Val 6" /> 
     </rich:column> 

Но, используя этот способ, третья колонка ломается. Если я объединил столбцы в конце таблицы, например, JSF RichTable merging rows/columns in a header, он будет работать нормально. Но это не решает мою проблему.

+0

«Третий столкновение» не объясняет, в чем проблема. Ваш код показывает только 4 ячейки, а «рисунок» имеет 7. Помните, что нумерация производится по строкам (т.е. первая строка будет 1-2-3-4, а не 1-3-4-5). – Makhiel

+0

Я отредактировал таблицу для лучшего понимания. Благодарю. – MarcosNeco

ответ

0

Вы делаете это сложнее, чем должно быть, оно очень похоже на стандартный HTML. breakRowBefore просто запускает новую строку (и поэтому все следующие столбцы будут в одной строке или ниже). Ваш пример состоит из двух строк, поэтому вы должны использовать его только один раз:

<column> 
<column rowspan="2"> 
<column> 
<column> 

<column breakRowBefore="true"> 
<column> 
<column> 

 Смежные вопросы

  • Нет связанных вопросов^_^