Задать вопрос
@entermix

Как сбросить значение input?

Есть форма с текстовым полем 'user' (bootstrap3-typeahead), и скрытое поле 'userId '

При выборе пользователя в выпадающем меню в 'userId ' записывается ID, который приходит в массиве с typeahead, нужно как то программно сбрасывать 'userId ' если пользователь удалил текст с текстового поля, как это можно организовать штатными средствами? Т.е. какое событие отвечает за изменения в текстовом поле?

$('#user').typeahead(
            {
                source: function (query, handler) {
                    $.ajax({
                        url: '/users/search',
                        type: 'GET',
                        dataType: 'json',
                        data: {q: query},
                        beforeSend : function(){
                            $('#userId').val(null);
                        },
                        success: function (data) {
                            handler(data);
                        }
                    });
                },
                updater: function (obj) {
                    $('#userId').val(obj.id);
                    return obj.name;
                },
                autoSelect: true
            }
        );


Сейчас userId сбрасывается только тогда, когда пользователь частично удаляет/изменяет текстовое поле.
  • Вопрос задан
  • 3492 просмотра
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
Stalker_RED
@Stalker_RED
Обычно достаточно onchange. Но если что, есть и более низкоуровневые onkeyup/onkeydown.
Сама очистка $('field').val('') или .val(0) по ситуации.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы