Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 31.01.2021
Сообщений: 1

Проблема с Jquery Autocomplete при заполнении нескольких полей

01.02.2021, 00:13. Показов 868. Ответов 0

Студворк — интернет-сервис помощи студентам
Необходимо сделать скрипт автозаполения полей input когда пользователь вводит адрес.

Для этого написал php-скрипт который используя REST API сервиса Ahunter.ru (http://ahunter.ru/site/doc/api/suggest/address) собирает подсказки для вводимого пользователем адреса, обрабатывает их и формирует массив в формате JSON, для его последующей обработки Jquery Autocomplete

Проблемы возникли при написании скрипта на Jquery для ajax-запроса к php-скрипту. Код скрипта на Jquery:


JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 <script type="text/javascript">
 
 $('.address').each(function(){
 
$(this).autocomplete({ source: function(request,response) {
    
 var val =  $('.address').val();
 
    
    $.getJSON('http://doc.army-help.ru/files/1.php?query=' + val,  function(data){
         
        var suggestions = []; // массив для хранения результатов
        $.each(data, function(key, val) {
                     
                suggestions.push(val.value); // добавляем все элементы
            });
            response(suggestions);
        });
    
    }     
});
 
 
});
 
</script>
Скрипт работает, но проблема заключается в том, что для обработки нескольких полей с классом address на странице используется функция .each. При этом обрабатываются все поля но данные для переменной val (в нее помещается введенные пользователем данные) берутся только из 1-го по порядку класса address.

!!! ВОПРОС:

Не понимаю как заполнять переменную val содержанием именно того input, который заполняет пользователь. Пробовал варианты - var val = $(this).val(); и var val = this.value; но они не работают.

Адрес php-скрипта - http://doc.army-help.ru/files/... 0%B8%D0%B9

Адрес страницы с ajax-скриптом - http://doc.army-help.ru/files/2.php

Добавлено через 44 минуты
Решение найдено:


В данном случае обходить все поля неправильно, each тут не помощник.
Правильно будет отслеживать ввод данных в поле и тут же обрабатывать из него данные:

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$('body').on('keyup', '.address', function(){
 var item = $(this);
item.autocomplete({ source: function(request,response) {
 var val = item.val();
 $.getJSON('http://doc.army-help.ru/files/1.php?query=' + val,  function(data){
        
        var suggestions = []; // массив для хранения результатов
        $.each(data, function(key, val) {
                    
                suggestions.push(val.value); // добавляем все элементы
            });
            response(suggestions);
        });
            
  }     
});
});
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.02.2021, 00:13
Ответы с готовыми решениями:

Как используя Autocomplete (jquery) заполнить несколько полей?
$(function() { $(&quot;#add_client_okpo&quot;).autocomplete({ source: function (request, respond ) { $.post( &quot;index.php&quot;, { ...

Ошибка при работе с jQuery autoComplete
имеется таблица с инпут-полями(вернее одно поле сзодано по умолчанию) и кнопка которая добавляет доп инпут-поля. первое инпут-поле с...

Ошибка при заполнении полей
Доброго времени) Delphi7+Access Ошибка &quot;...не может содержать значение Null, так как свойство Required имеет значение True. Введите...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
01.02.2021, 00:13
Помогаю со студенческими работами здесь

JQuery .autocomplete во ввода выбора показывает полное значение (title), а при выборе обрезает до id
Доброго дня! Есть функция .autocomplete. &lt;script&gt; $(function() { $( &quot;#skills&quot; ).autocomplete({ source:...

Ошибки при заполнении полей запросами
при помощи запросов sql , прикрепленных в файле - создала таблицы.. начала их заполнять, опять-таки при помощи запросов и начали лезть...

Исправить ошибку при заполнении полей
Помогите пожалуйста исправить ошибку. Как я понимаю она связана с памятью, но не могу исправить. После запуска программы заполняю поля,...

Невозможность отправки писем при заполнении полей
Столкнулся со следующей проблемой, есть приложение в котором реализована форма для отправки сообщений, с типичными полями, но после...

Ошибка NullReferenceExeption при заполнении полей в WebBrowser
Всем привет! У меня большая проблема. Раньше не знаю как, но работали вот такие строчки: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru