Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 14.08.2014, 22:14
Аватар для IndigoHollow
Аспирант
Отправить личное сообщение для IndigoHollow Посмотреть профиль Найти все сообщения от IndigoHollow
 
Регистрация: 02.04.2012
Сообщений: 50

Реакция на выбор значения из datalist
Есть текстовый input со списком datalist

<input name="filt" list="datalistyo" id="filt" />

<datalist id="datalistyo">
<option value="Арбуз" />
<option value="Пляж" />
<option value="Турник" />
</datalist>


Когда в input начинаешь вводить первые символы (например "у"), то появляется выпадающий список со значениями, в которых есть "у". Когда выбираешь какое-то значение из списка, то им заполняется input.

Вопрос: как сделать так, что бы после выбора значения из выпадающего списка, срабатывало событие (имитация нажатия клавиши Enter)?
Ответить с цитированием
  #2 (permalink)  
Старый 15.08.2014, 09:05
Профессор
Отправить личное сообщение для WorM32 Посмотреть профиль Найти все сообщения от WorM32
 
Регистрация: 11.02.2014
Сообщений: 303

При выборе чем, мышью? Зачем нужно имитировать Enter?
Ответить с цитированием
  #3 (permalink)  
Старый 15.08.2014, 10:01
Аватар для IndigoHollow
Аспирант
Отправить личное сообщение для IndigoHollow Посмотреть профиль Найти все сообщения от IndigoHollow
 
Регистрация: 02.04.2012
Сообщений: 50

Сообщение от WorM32 Посмотреть сообщение
При выборе чем, мышью?
Да, при выборе мышью.

Сообщение от WorM32 Посмотреть сообщение
Зачем нужно имитировать Enter?
Задумано так, что параллельно с тем, как в input вводятся символы, в таблице ниже отображаются те строки, значения которых удовлетворяют введенным символам. Например, если я ввожу в input "поз", то таблица динамически оставляет строки, в которых есть надписи "Позвоночник", "Поза" и т.д. Соответствующий код вызывается событием onkeyup.
Но если выбрать значение из datalist, то ничего не произойдет, т.к. события onkeyup не было. Вот я и хочу как-то заставить таблицу фильтроваться после выбора из datalist. Подскажите вариантик?
Ответить с цитированием
  #4 (permalink)  
Старый 15.08.2014, 10:33
Профессор
Отправить личное сообщение для WorM32 Посмотреть профиль Найти все сообщения от WorM32
 
Регистрация: 11.02.2014
Сообщений: 303

Событие onchange.
Ответить с цитированием
  #5 (permalink)  
Старый 15.08.2014, 11:17
Аватар для IndigoHollow
Аспирант
Отправить личное сообщение для IndigoHollow Посмотреть профиль Найти все сообщения от IndigoHollow
 
Регистрация: 02.04.2012
Сообщений: 50

Сообщение от WorM32 Посмотреть сообщение
Событие onchange.
Если поменять onkeyup на onchange? Не работает. И фильтрация при вводе с клавиатуры тоже перестает работать.
Ответить с цитированием
  #6 (permalink)  
Старый 15.08.2014, 13:53
Профессор
Отправить личное сообщение для WorM32 Посмотреть профиль Найти все сообщения от WorM32
 
Регистрация: 11.02.2014
Сообщений: 303

IndigoHollow,
не, onkeyup нужно оставить и дополнительно навесить onchange.
Ответить с цитированием
  #7 (permalink)  
Старый 07.10.2014, 11:12
Аспирант
Отправить личное сообщение для myshara Посмотреть профиль Найти все сообщения от myshara
 
Регистрация: 25.06.2012
Сообщений: 37

Выбор значения из Datalist
Доброго времени суток!

При выполнении задачи - Обход элементов по Enter - сложилась следующая ситуация:

Работа в форме проводиться с клавиатуры (мышь используется редко, хотелось работу мышью исключить)

В Мозиле при вводе в input datalist отображается, дает стрелками выбрать значение, но при нажатии на Enter переходит к следующему input, при этом выбор из datalist не происходит.

Как решить эту задачу?

Причем в Хроме при нажатии Enter происходит выбор из datalist без перехода в следуюший input.
Ответить с цитированием
  #8 (permalink)  
Старый 07.10.2014, 14:07
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Если выбор не происходит, не делай preventDefault(). Чтобы форма не остылалась по ентеру сама - поменяй кнопку отправки [type=submit] на [type=button]. Если выбор все равно не происходит - возможно потому что фокус уходит до вставки браузером значения. Тогда передавай фокус с задержкой (нулевой, через setTimeout)
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #9 (permalink)  
Старый 07.10.2014, 14:27
Аспирант
Отправить личное сообщение для myshara Посмотреть профиль Найти все сообщения от myshara
 
Регистрация: 25.06.2012
Сообщений: 37

Выбор значения из Datalist ч-з setTimeout
Спасибо за предложенный вариант.

Попробовал добавить следующий код:

timeout = setTimeout($next.focus(), 500);
clearTimeout(timeout);


Ситуация в Мозиле не изменилась.
Переход на след. input происходит, а выбора нет.
Ответить с цитированием
  #10 (permalink)  
Старый 07.10.2014, 14:30
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

неправильно потому что делаешь. Иди учи основы.
__________________
В личку только с интересными предложениями
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выбор значения get переменной из подключения к скрипту cript Общие вопросы Javascript 4 04.02.2014 15:36
выбор значения селекта jquery tiho Общие вопросы Javascript 3 28.12.2012 11:43
Выбор значения при создании ComboBox Tie ExtJS 2 25.03.2012 20:06
выбор значения select -> скрытый input allie jQuery 2 16.08.2011 12:28
Выбор только 1 значения chexbox Amateur Internet Explorer 9 21.06.2011 13:19