jQuery: отправляйте форму, только если на странице не запущен AJAX

Когда поле ввода города размыто, я получаю сонет через ajax-запрос и устанавливаю его как значение скрытого поля в той же форме, в которой находится поле города.

$('input#city').on('blur', function() {
    $.ajax({
        url: 'get/something?param=val',
        success: function(response) {
            $('input:hidden[name="something"]').val(response);
        }
    });
});

Если пользователь отправляет форму сразу после размывания поля города, иногда из-за задержки скрытое поле не заполняется, потому что SQL на другом конце занимает слишком много времени.

Форма, в которой находятся оба этих поля, также передается через ajax:

$('form#find-users').on('submit', function() {
    if(NO_AJAX_CURRENTLY_RUNNING_ON_PAGE) {
        // do stuff
    }
});

Как определить, что на странице не запущен ajax? Это обеспечит заполнение ajax города и заполнение скрытого поля перед обработкой формы.

РЕДАКТИРОВАТЬ

На самом деле это победилот, это только предотвратит отправку формы. Но если я могу обнаружить это, то могу использовать setInterval и продолжать пытаться запустить этот код, пока он не запустится, потому что ajax завершен. В идеале в jQuery должно быть что-то, ожидающее завершения другого ajax, а затем отправляющее.

Ответы на вопрос(5)

Ваш ответ на вопрос