Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 02.12.2015, 09:42
Новичок на форуме
Отправить личное сообщение для t.soyuzova Посмотреть профиль Найти все сообщения от t.soyuzova
 
Регистрация: 02.12.2015
Сообщений: 5

jQuery autocomplete не работает в цикле
Дорогие Форумчане, доброго дня всем!
Прошу помощи. Использую autocomplete для списков select, находящихся в цикле:

$(function(){
    $('#category').autocomplete('search.php?mode=sql', {
        width: 200,
        max: 10
    });
});

В search.php идет подключение значений из базы.
Автоматически функция не прорабатывает каждый элемент в цикле, поэтому залезла в учебник и нашла инфо об использовании each(). Делаю так:
$('#category').each(function(){
    $(this).autocomplete('search.php?mode=sql', {
        width: 200,
        max: 10
    });
});

Не работает... Подскажите, пожалуйста, что я неправильно делаю.
Ответить с цитированием
  #2 (permalink)  
Старый 02.12.2015, 09:54
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Сообщение от t.soyuzova
Подскажите, пожалуйста, что я неправильно делаю.
прочитать что такое id и подумать о class если совсем плохо то об атрибуте=id.
Ответить с цитированием
  #3 (permalink)  
Старый 02.12.2015, 10:54
Новичок на форуме
Отправить личное сообщение для t.soyuzova Посмотреть профиль Найти все сообщения от t.soyuzova
 
Регистрация: 02.12.2015
Сообщений: 5

Вы имеете ввиду это:
var div = document.getElementById('category');
??
Ответить с цитированием
  #4 (permalink)  
Старый 02.12.2015, 11:14
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

t.soyuzova,
id уникально!!! при поиске ищется только первый, потому что в нормальном случае других нет. нужно много используют class
$(function(){
    $('точкаВашКласс').autocomplete('search.php?mode=sql', {
        width: 200,
        max: 10
    });
});

если хочется погорячее, то поиск по атрибуту id
$(function(){
    $('[id="category"]').autocomplete('search.php?mode=sql', {
        width: 200,
        max: 10
    });
});
Ответить с цитированием
  #5 (permalink)  
Старый 02.12.2015, 11:24
Новичок на форуме
Отправить личное сообщение для t.soyuzova Посмотреть профиль Найти все сообщения от t.soyuzova
 
Регистрация: 02.12.2015
Сообщений: 5

Точно!!! как можно было не догадаться))) Очень помогли, спасибо!
Ответить с цитированием
  #6 (permalink)  
Старый 02.12.2015, 15:48
Аспирант
Отправить личное сообщение для vettel Посмотреть профиль Найти все сообщения от vettel
 
Регистрация: 07.05.2015
Сообщений: 43

Сообщение от рони Посмотреть сообщение
t.soyuzova,
id уникально!!! при поиске ищется только первый,
Если я не ошибаюсь, в случае не одного id на странице getElementById выберет не первый, а случайный.
Ответить с цитированием
  #7 (permalink)  
Старый 02.12.2015, 15:54
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Сообщение от vettel
не первый, а случайный.
сами проверяли?
Ответить с цитированием
  #8 (permalink)  
Старый 02.12.2015, 16:00
Аспирант
Отправить личное сообщение для vettel Посмотреть профиль Найти все сообщения от vettel
 
Регистрация: 07.05.2015
Сообщений: 43

В учебнике так написано)) https://learn.javascript.ru/searching-elements-dom

Хотя только что проверил - действительно, возвращает всегда первый элемент.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не работает jQuery doox911 Библиотеки/Тулкиты/Фреймворки 3 17.01.2014 15:51
jquery - не работает клик по кнопке выбора варианта bartonom jQuery 0 04.10.2012 13:35
jquery не работает в цикле alexus jQuery 3 03.09.2011 14:49
При наборе адреса с www не работает AJAX (JQuery)! madmis AJAX и COMET 3 23.11.2009 19:03
плагин autocomplete от jquery Anthony jQuery 0 14.12.2008 22:48