Как сделать поле "автозаполнение"? - PullRequest
1 голос
/ 20 апреля 2011

Я не могу понять, как сделать автозаполнение поля в ATK.

Я думаю, это как-то связано с типом "reference", но все еще не уверен. Предположим, я ищу имя клиента в поле типа "line", а затем автозаполнение должно перечислить все совпадающие имена / topXX.

Сценарий 1: Как только я нажму [Enter], мне понадобится загрузить всю эту строку из БД в поля формы, чтобы я мог редактировать запись. Я предполагаю, что для этого необходимо сначала получить идентификатор клиента, а затем отправить на страницу редактирования, а затем вызвать метод loadData () для этого идентификатора и заполнить поля.

Сценарий 2: Я назначаю запрос на работу клиенту. Сначала я найду клиента, затем я смогу сохранить его идентификатор в скрытом поле для последующей публикации.

Любой совет? ТИА

1 Ответ

1 голос
/ 20 апреля 2011

Я бы предложил вам пройти 2 формы. Первая форма с одним полем, и при изменении поля она автоматически перезагружает вторую форму, включая параметр.

Вам также понадобится поле автозаполнения. В 4.0 автозаполнение несколько глючит, но оно было исправлено в 4.1 с использованием метода http://jqueryui.com/demos/autocomplete/#combobox

Для использования с моделями и контроллерами, а также раскрывающимся списком, пример здесь: http://codepad.agiletoolkit.org/reloadform

Альтернативный пример: http://demo.atk4.com/demo.html?t=22

Начиная с 4.1, вы также можете использовать поля автозаполнения вместо ссылки:

 $form1->addField('autocomplete','user');
...