JSF 2: dataTable columnClasses не реплицируется после 2 столбцов - PullRequest
4 голосов
/ 07 января 2011

Я использую Glassfish 3.0.1 и впервые экспериментировал с columnClasses в dataTable.

Это примерно так:

<h:dataTable value="#{coreGridBean.heroBeanList}" var="hero"
                    captionStyle="font-size: 0.95em; font-style:italic"
                    styleClass="orders"
                    headerClass="ordersHeader"
                    footerClass="ordersHeader"
                    columnClasses="oddColumn,evenColumn">

Из основной книги jsf, которую я читаю, говорится, что, указав только 2 класса в атрибуте columnClasses, эти 2 будут повторяться, когда количество столбцов больше 2.

Допустим, у меня есть пять столбцов, а columnClasses станет чем-то вроде oddColumn, evenColumn, oddColumn, evenColumn, oddColumn, и нам просто нужно определить его так:

Но по моему опыту с 3 колонками, это не так. Из третьего столбца они не получили классов. Я должен был указать columnClasses = "oddColumn, evenColumn, oddColumn", чтобы он работал

Это ошибка или просто ошибка?

1 Ответ

13 голосов
/ 07 января 2011

Повторение применимо только к rowClasses.

Из документации JSF 2.0 h:dataTable :

columnClasses

Разделенный запятыми список классов стилей CSS, которые будут применяться к столбцам этой таблицы. Разделенный пробелами список классов также может быть указан для любого отдельного столбца. Если количество элементов в этом списке меньше, чем количество фактических дочерних столбцов UIData, атрибут «class» не выводится для каждого столбца, который превышает количество элементов в списке. Если число элементов в списке больше, чем число фактических дочерних столбцов UIData, элементы в позиции в списке после последнего столбца игнорируются.


rowClasses

Список разделенных запятыми классов стилей CSS, которые будут применяться к строкам этой таблицы. Разделенный пробелами список классов также может быть указан для любой отдельной строки. Эти стили применяются, в свою очередь, к каждой строке таблицы. Например, если список содержит два элемента, первый класс стиля в списке применяется к первой строке, ко второй ко второй строке, с первой по третью строку, со второй по четвертую строку и т. Д. Другими словами, мы продолжаем перебирать список, пока не достигнем конца, а затем снова начнем с начала.

Возможно, книга ошиблась, или вы неправильно прочитали книгу.

Так как в любом случае номер столбца в определении представления всегда всегда фиксирован, просто повторить его самостоятельно не составит труда.

<h:dataTable columnClasses="oddColumn,evenColumn,oddColumn,evenColumn">
    <h:column></h:column>
    <h:column></h:column>
    <h:column></h:column>
    <h:column></h:column>
</h:dataTable>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...