Jquery делает AJAX для вызова на входе, но продолжает писать в ожидании ответа - PullRequest
0 голосов
/ 18 декабря 2018

У меня есть поле ввода.Когда пользователь начинает вводить текст, я продолжаю проверять длину ввода, а когда он равен 6, я выполняю AJAX-вызов.

Как только AJAX-вызов сработает, пользователь не сможет набирать текст дальше.Какое изменение я должен сделать, чтобы пользователь мог продолжать писать, пока AJAX работает в фоновом режиме.

$(".myInput").on('input', function (e) {
    var value = e.target.value;

    if (value.length == 6) {
        callAjax(value);
    }
});

var callAjax= function (bin) { 
    Core.post("/url", { bin: bin }, function (result) {
        var data = JSON.parse(result.d);
        var val = data.Id +;
        console.log(data)
    });
}

1 Ответ

0 голосов
/ 18 декабря 2018

Полагаю, вы хотите добавить ответ, соответствующий вставленным данным, с помощью полученного результата.Так что лучший способ сделать это - использовать функцию jquery «keyup ()», которая будет запускать ajax при каждом изменении поля ввода.Или, если вы хотите запустить его регулярно, установите интервал времени для функции.

Попробуйте сделать что-то вроде этого.

$(".myInput").keyup(function(e) {
            var value = e.target.value;

            if (value.length == 6) {
                callAjax(value);
            }
        });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...