@maxdit

Как сделать задержу отправки формы?

Как сделать, таймер к примеру в 3 секунды, чтоб форма обрабатывала через 3 сек после нажатия
как реализовать ?
имеем вот такой код js
Profile.ask = function (username) {

    ask =  $('textarea[name=questionText]').val();

    ask = $.trim(ask);

    if ( ask.length == 0 ){

        $('textarea[name=questionText]').focus();
        return;
    }

    //$('textarea[name=questionText]').attr("disabled", "disabled");

    $.ajax({
        type: 'POST',
        url: '/' + username + "/ask",
        data: $("form.profile_question_form").serialize(),
        dataType: 'json',
        timeout: 30000,
        success: function(response){

            $('form.profile_question_form').hide();
            $('div.remotivation_block').show();

            if (typeof myPage !== 'undefined') {

                var questions_count = parseInt($("span#questions_counter").text());

                questions_count++;

                $("span#questions_counter").text(questions_count)
                $("span#questions_counter_cont").show();
            }
        },
        error: function(xhr, type){

        }
    });
}
  • Вопрос задан
  • 265 просмотров
Решения вопроса 1
YourDesire
@YourDesire
Я вообще по образованию бухгалтер...
Зачем человеку советуете promise? Для чего используют promise? Если нужно, подчеркиваю, по завершении операции выполнить то или иное действие, подробнее в документации по promise.

Человек же хочет, подчеркиваю, чтобы форма отрабатывала через 3 секунды после факта нажатия на кнопку Submit. Не путайте с тем, что он хочет дождаться конца выполнения запроса.

По теме вопроса:
setTimeout(function() {
  // Тело функции здесь. Все что внутри, начнет выполняться только через 3 сек.
}, 3000);
// 3000 = 3 сек


Документация на русском языке по функции setTimeout

Пример на JSFiddle
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
evgeniy8705
@evgeniy8705
Повелитель вселенной
promise + setTimeout
Ответ написан
Промисы используй
вот видосик крутой про них: https://www.youtube.com/watch?v=vNEDPtVchfw
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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