Я обновляю приложение, написанное в ADF 11.1.1.3. Почти во всех моих экранах у меня есть таблицы ADF с редактируемыми полями, и в каждой таблице включен селектор строк.ADF Таблица Редактируемое поле №
У меня проблема, когда пользователь нажимает в редактируемом поле строки таблицы, которая еще не выбрана, появляется селектор строки поля, а затем браузер теряет фокус на поле, которое пользователь намеревался Выбрать.
За моим примером экрана выше, в настоящее время выбрана вторая строка таблицы. Однако, если я щелкнул внутри любого редактируемого поля в строке 3 (например, «Дата окончания»), браузер задает фокус на поле. Но затем слушатель Table Row Selection вызывает сразу же после этого, а затем снимает фокус с поля, которое первоначально было нажато. Это происходит в любом редактируемом типе поля.
Самое неприятное, когда я обновляю флажок строки таблицы (не выбрано), значение немедленно перезаписывается обратно с его исходным значением.
В настоящее время единственным способом обойти эту проблему является выбор пользователем первой строки таблицы, а затем обновление данных поля.
Есть ли опыт в этой проблеме? Я думаю о слушателе или слушателе изменения стоимости, но хотел бы узнать, что вы думаете.
Спасибо!
Обновление 01: Я установил для свойства «немедленное» значение «истина» для таблицы, все равно получаю те же результаты. Я применил немедленный = true к родительским панелям, таким же результатам.
Update 02: стола Итератор»и Binding-х ChangeEventPolicy был установлен не по умолчанию (нет). Но я никого не установил. Те же результаты ..
Обновление 03: Удалены валидаторы, одинаковый результат.
Почему вы используете выбор строк? –
Существует настройка «Мастер-детализация», основанная на выбранной записи таблицы. Также оригинальный разработчик написал функциональность, чтобы пользователи могли выбирать строки таблицы, удалять их и выбирать следующую/предыдущую запись (я не знаю, почему были добавлены кнопки новой/предыдущей записи). – GavinWoods
Я нашел одну страницу, где прослушиватель выбора и редактируемые поля работают правильно. На первый взгляд они почти точно такие же. Разница заключается в проверке поля. Другое отличие заключается в том, что прослушиватели выбора на странице функционируют намного быстрее. Я думаю, что дополнительные циклы проверки выполняются, что нам не нужно. – GavinWoods