|   |   | 
| 
 | Автоподбор текста как в поисковиках | ☑ | ||
|---|---|---|---|---|
| 0
    
        cbat 18.08.12✎ 13:03 | 
        Всем привет!
  Заказчик потребовал реализовать автозаполнение поля справочника на форме подобному тому, как это делается в поисковиках при наборе первых символов, т.е. в поле вводим первые буквы - выпадает список значений начинающийся на эти самые первые буквы. Реализовал так в обработчике поля АвтоПодборТекста(): Процедура РегионАвтоПодборТекста(Элемент, Текст, ТекстАвтоПодбора, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; СЗ = Новый СписокЗначений; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | Регионы.Ссылка, | Регионы.Наименование |ИЗ | Справочник.Регионы КАК Регионы |ГДЕ | Регионы.ЭтоГруппа = ЛОЖЬ | И Регионы.Наименование ПОДОБНО &Наименование"; Запрос.УстановитьПараметр("Наименование", Текст+"%"); Результат = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = Результат.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл СЗ.Добавить(ВыборкаДетальныеЗаписи.Ссылка, ВыборкаДетальныеЗаписи.Наименование); КонецЦикла; ЭлементСЗ=ВыбратьИзСписка(СЗ,Элемент); Если ЭлементСЗ<>Неопределено Тогда Элемент.Значение = ЭлементСЗ.Значение; КонецЕсли; КонецПроцедуры Все бы хорошо, но когда начинаешь вводить символы при отображении списка поле становится не активным, что не позволяет продолжить ввод текста - приходится кликать по нему чтобы снова активировать его при этом список исчезает. Подскажите как можно исправить данную проблему. | |||
| 1
    
        SiAl-chel 18.08.12✎ 22:18 | ||||
| 2
    
        IamAlexy 18.08.12✎ 22:20 | 
        (0) если не ошибаюсь в той же УТ11 реализовано..
  причем как через ввод по строке так и через систему поиска по совпадениям. | |||
| 3
    
        cbat 18.08.12✎ 22:45 | 
        SiAl-chel решения данной проблемы в вашей ссылке не нашел.
  IamAlexy к сожалению под рукой УТ нет :( может есть где подобная реализация в БП? | |||
| 4
    
        Jaffar 19.08.12✎ 02:44 | 
        (3) наверное, намек был, что нужно правильно заполнить Сервер.МассивПодбора.     | |||
| 5
    
        Ranger_83 19.08.12✎ 07:38 | 
        СЗ подставляй в ТекстАвтоПодбора
  а потом в ОбработкаВыбора присваивай выбранное значение твоему элементу | |||
| 6
    
        cbat 19.08.12✎ 11:46 | 
        Я видимо плохо объяснил в чем проблема. Попробую еще раз:
  Во-первых, я использую режим запуска - обычное приложение. Во-вторых, у меня все работает как необходимо, проблема лишь в том, что когда отображается выпадающий список с возможными значениями, то фокус переходит на сам список, поэтому продолжить набирать текст не получается пока не кликнешь по нему мышкой, чтобы фокус от списка перешел обратно полю, при этом сам список исчезает: http://s018.radikal.ru/i522/1208/9b/ae12c1b15e02.png Пример того, что мне нужно можно посмотреть здесь: http://www.rgs.ru/products/private_person/auto/casco/calc/index.wbp Если в поле "регион" начать вбивать текст, то поле ввода остается постоянно активным несмотря на появление списка с подбором. Если подобную реализацию встречали в стандартных конфах просьба подсказать где. | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |