2013-06-19 3 views
1

Я обновляю приложение, написанное в ADF 11.1.1.3. Почти во всех моих экранах у меня есть таблицы ADF с редактируемыми полями, и в каждой таблице включен селектор строк.ADF Таблица Редактируемое поле №

У меня проблема, когда пользователь нажимает в редактируемом поле строки таблицы, которая еще не выбрана, появляется селектор строки поля, а затем браузер теряет фокус на поле, которое пользователь намеревался Выбрать.

enter image description here

За моим примером экрана выше, в настоящее время выбрана вторая строка таблицы. Однако, если я щелкнул внутри любого редактируемого поля в строке 3 (например, «Дата окончания»), браузер задает фокус на поле. Но затем слушатель Table Row Selection вызывает сразу же после этого, а затем снимает фокус с поля, которое первоначально было нажато. Это происходит в любом редактируемом типе поля.

Самое неприятное, когда я обновляю флажок строки таблицы (не выбрано), значение немедленно перезаписывается обратно с его исходным значением.

В настоящее время единственным способом обойти эту проблему является выбор пользователем первой строки таблицы, а затем обновление данных поля.

Есть ли опыт в этой проблеме? Я думаю о слушателе или слушателе изменения стоимости, но хотел бы узнать, что вы думаете.

Спасибо!

Обновление 01: Я установил для свойства «немедленное» значение «истина» для таблицы, все равно получаю те же результаты. Я применил немедленный = true к родительским панелям, таким же результатам.

Update 02: стола Итератор»и Binding-х ChangeEventPolicy был установлен не по умолчанию (нет). Но я никого не установил. Те же результаты ..

Обновление 03: Удалены валидаторы, одинаковый результат.

+0

Почему вы используете выбор строк? –

+0

Существует настройка «Мастер-детализация», основанная на выбранной записи таблицы. Также оригинальный разработчик написал функциональность, чтобы пользователи могли выбирать строки таблицы, удалять их и выбирать следующую/предыдущую запись (я не знаю, почему были добавлены кнопки новой/предыдущей записи). – GavinWoods

+0

Я нашел одну страницу, где прослушиватель выбора и редактируемые поля работают правильно. На первый взгляд они почти точно такие же. Разница заключается в проверке поля. Другое отличие заключается в том, что прослушиватели выбора на странице функционируют намного быстрее. Я думаю, что дополнительные циклы проверки выполняются, что нам не нужно. – GavinWoods

ответ

0

Поддерживает ли ваш приемник выбора "# {bindings.xxx.collectionModel.makeCurrent}"? это используется для установки текущей выбранной строки как текущей строки, если вы ее удалили, это означает, что даже когда вы выбираете строку, нажимая на поле, модель все еще имеет предыдущую строку, выбранную в своем итераторе.

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