Колонка Нажмите в Rich Faces 4 - PullRequest
0 голосов
/ 08 июля 2011

Я использую extendedDataTable из Richfaces 4. Я хочу показать страницу сведений для элемента в строке, когда пользователь щелкает по нему.Поэтому я добавил что-то вроде

onrowclick="showDetails(#{item.id})"

в таблицу.Это вызывает соответствующий тег <a4j:jsFunction/>.Пока это работает.

Тем не менее, в одном из столбцов есть команда LinkLink (для переключения в режим редактирования деталей).Ссылка работает в браузерах на основе webkit (Chrome / Safari).Но IE и Firefox выполняют только щелчок по строке.Командная ссылка там не работает.

Можно ли каким-то образом установить только oncolumnclick или столбцы, которые не содержат командную ссылку?Я не нашел способа добавить обработчик onclick к определенным столбцам (я использую rich: column для столбцов.)

Или есть лучший / чище / приятнее способ добиться "щелчка" где-нибудьв строке, чтобы отобразить подробности, щелкните ссылку в последнем столбце, чтобы отобразить представление редактирования "-behaviour I am after?

Ответы [ 2 ]

0 голосов
/ 11 июля 2011

Мой текущий обходной путь HACK - не использовать onrowclick, а добавить styleClass="clickable" ко всем моим столбцам, кроме столбца со ссылкой.В первом столбце я добавил следующее:

<h:outputText value="#{item.id}" style="display: none;" styleClass="id"/>

Затем после таблицы я использую следующий jQuery:

<rich:jQuery selector=".myTable td.clickable" query="live('click', function(event) {
                showDetails($(this).parent().children().children('.id').text());
              });"/>

Мне действительно не нравится это решение, но онопока работает нормально

Я все еще открыт для лучших решений:)

0 голосов
/ 08 июля 2011

Попробуйте добавить это в свою команду. Кнопка

onclick="Event.stop(event||window.event)"
...