У меня есть приложение Java EE JSF / Primeface с формой ввода для добавления / редактирования объекта. Назовем его Product
. В этой форме есть поле для указания Salesperson
, которое на самом деле будет Employee Number
Продавца. Но большинство пользователей, занимающихся вводом данных, даже не догадываются о численности сотрудников продавца.
Я ищу способ открыть всплывающее окно, в котором пользователь может ввести одно или два ключевых слова, найти подходящего Б. Смита, Дж. Доу и т. Д., Щелкнуть его имя и получить соответствующий номер сотрудника. вставьте в текстовое поле родительской формы. Или как-то сделать это встроенным в родительскую форму, где пользователь начинает вводить любое ключевое слово, а ajax запрашивает базу данных сотрудников, выбирается соответствующий продавец и номер сотрудника заменяет ключевые слова, введенные в текстовое поле ввода.
Изюминкой является наличие (в нередактируемом состоянии) рядом с полем ввода текста с номером сотрудника, полное имя продавца, соответствующее номеру сотрудника.
Или какой-то их вариант.
У меня это работало в приложении JSP с использованием некоторого взломанного javascript, но у меня возникли проблемы с переносом функциональности на JSF / Primefaces, и мне было интересно, доступна ли эта функция уже в любой из технологий. Некоторое время искал решение.
Одна из самых больших проблем, если я продолжу использовать свой старый javascript, - это знание идентификатора текстового поля родительской формы, чтобы знать, куда вставить значение. Используя форму JSF, я получаю что-то вроде j_idt28:j_idt29
1 ответ
В этом случае вам не нужно возиться с Javascript, поэтому вам не нужно знать сгенерированные идентификаторы.
Поскольку вы используете PrimeFaces, вы можете изучить компонент автозаполнения.
Кроме того, вы всегда можете использовать тег f: ajax < / a>, чтобы отвечать на вводимые пользователем данные и, например, обновлять поля в соответствии с ним.
Похожие вопросы
Новые вопросы
javascript
По вопросам программирования на ECMAScript (JavaScript / JS) и его различных диалектах / реализациях (кроме ActionScript). Включите все соответствующие теги в свой вопрос; например, [node.js], [jquery], [json] и т. д.