@maiskiykot
Free coder

Как обнулить значение input для AJAX?

Колхозю для себя autocomplete в Laravel. Для одного значения все работает. Но есть две проблемы - первая - при попытке внести еще одно значение в поле input поиск ведется с начала строки а не с позиции курсора, а вторая - ajax перезаписывает значение всего поля а не вводимого слова. Отсюда вопрос: как минимально объявить для Ajax начало строки с позиции курсора? И сюда же - как перезаписать строку только от позиции курсора. Пока что success выглядит так:
success: function(data)
                {
                  $('#tagsList').fadeIn();
                  $('#tagsList').html(data);
                }
            });
        }
    });

    $('#tagsList').on('click', 'li', function() {
    $('#tags').val($(this).text());
    $('#tagsList').fadeOut();
});
  • Вопрос задан
  • 69 просмотров
Решения вопроса 1
@maiskiykot Автор вопроса
Free coder
Нашел скрипт - 20 строчек (+jquery). Решил задачу полностью
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Raxen
@Raxen
Lead Frontend Developer, Beeline
Вообще я не сторонник таких частых запросов на сервер по нажатию каждой кнопки, некоторые вешают таймаут в 2-3 секунды и только потом отправляют.

У вас перезаписывается значение инпута, нужно его дополнять.

Замените это
$('#tags').val($(this).text());

на это
$('#tags').val($('#tags').val() + $(this).text());

Курсор вероятно всего встанет на нужное место, если нет, то вот тут можно подсмотреть костыль
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы