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

Как остановить выполнение функции?

Добрый день!
Есть в функция в которой несколько раз выполняется ajax, я пытаюсь остановить выполнение по результатам выполнения ajax но у меня что-то не получается

function function_js_save() {
            
            $.ajax({
                url: '../../modules/ajax.php',
                type: "POST",
                data: ({
                    check_region_and_pult_number: ''
                }),
                dataType: "html",
                success: function (status) {
                    if (status.length > '2') {
                        status_workings = status.length;
                        alert_error(status);
                        return
                    }
                }
            });

            console.log('next');


я прохожу retrn и в консоль выводится текст
  • Вопрос задан
  • 4230 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
@DanKud
Ваш return срабатывает для метода success, а не для самой функции. Покажите как вы несколько раз вызываете AJAX-запрос, чтобы понять что к чему, потому что сам AJAX-запрос тут ни о чем не говорит.

Можно сделать так:
async function function_js_save() {
    let status = await new Promise(resolve => {
        $.ajax({
            url: '../../modules/ajax.php',
            type: "POST",
            data: ({
                check_region_and_pult_number: ''
            }),
            dataType: "html",
            success: function (status) {
                resolve(status);
            }
        });
    });

    if (status.length > '2') {
        status_workings = status.length;
        alert_error(status);
        return;
    }

    console.log('next');
}
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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