2015-06-05 3 views
0

Добрый вечер. Меня попросили обновить веб-приложение, которое было реализовано в RichFaces. Приложение имеет богатый: extendedDataTable внутри составного компонента, который отображает некоторые данные, доступные для поиска. Обновление, которое мне было предложено реализовать, состоит в том, чтобы первая строка в таблице автоматически выбиралась при отправке поиска. Я не мог найти способ сделать это из бэк-бэка, но я видел, что это можно сделать с помощью JavaScript API, вызывая функции selectRow и setActiveRow, но проблема в том, что мне нужен «clientId» стол, и если я проверить DOM и получить идентификатор клиента таблицы, скажем, «мусор: TABLEID», и я жесткий код, в функции,RichFaces 4 ExtendedDataTable - выбор программ программно

#{rich:component('junk:tableId')}.selectRow(0); 
#{rich:component('junk:tableId')}.setActiveRow(0}); 

вещи работают, как мне нужно, чтобы они. Чтобы получить ClientId, я нашел богатых: функцию ClientId, и я подтвердил, что богатая: ClientId («TABLEID») возвращает тот же ClientId, что я получил от DOM, так что я обновил мой первоначальный вызов функции

#{rich:component('rich:clientId('tableId')')}.selectRow(0); 
#{rich:component('rich:clientId('tableId')')}.setActiveRow(0}); 

И это не работает, и теперь я не уверен, что попробовать. Кто-нибудь знает, что я могу попробовать?

ответ

1

Вы можете просто пойти с #{rich:component('tableId')}, функция звонит clientId внутренне в любом случае.

#{rich:component('rich:clientId('tableId')')} 

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

+0

Ничего себе, я мог бы поклясться, что вчера попробовал. Я должен потерять его. Благодаря! – confused

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