h-i

Автокомплит работает только при клике по улице

Recommended Posts

Собственно сабж. Если же выбрать улицу с клавиатуры (стрелка вниз + Enter) или вписать свою, то вместо конкретных результатов показываются все объявления. Что с этим можно сделать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В данный момент вижу только один способ.

 

1. Вскрываем /apps/system/js/refresher.functions.js

2. В нем есть операция

$(this).keydown(function(){_hidden.val('');});

которая зачищает значение поля при обращении к автокомплиту. Убиваем этот кусок.

3. Удаленный функционал переносим в сам автокомплит в тело UI обработчика:

minLength: 1,select: function( event, ui ) {_hidden.val(ui.item.id);}/*тут начинаем добавлять свое*/,response: function( event, ui ) {    _hidden.val('');},change: function( event, ui ) {    if(ui.item===null){        _hidden.val('');    }}

Другими словами очистку сносим с события тычка в поле на событие загрузки результата поиска с сервера с повторной проверкой при расфокусировке элемента, которая очистит прошлое значение, если ввод в автокомплит не вызывал запроса на сервер, например даблкликом вы выделили все и просто удалили.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Спасибо, всё работает. Добавил ещё autoFocus: true, чтобы первое значение автоматически подхватывало.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас