Отправить изменения шага в jQuery Steps - PullRequest
0 голосов
/ 23 октября 2018

Вот фрагмент кода, который у меня есть:

    $("#test-wizard").steps({
        headerTag: 'header',
        bodyTag: '.container',
        transitionEffect: "slideLeft",
        autoFocus: true,
        onStepChanged: function(event, currentIndex) {
            $('#skills-form').submit();
            return true;
        }
    });

Так что, как вы можете видеть, я использую jQuery Steps для создания многошаговой формы.На каждом этапе я хотел бы отправлять результаты (значения) на внутренний сервер.Для этого я использую submit (), но он перезагружает страницу, что означает, что она не перейдет к следующему шагу формы.Мне нужно отправлять форму на каждом шаге, но не обновлять всю страницу, что приводит к тому, что форма возвращается к первому шагу.Конечно, я пытался использовать event.preventDefault () для функции отправки, но затем он также блокировал запрос к бэкэнду (но мне нужно только заблокировать обновление страницы).

1 Ответ

0 голосов
/ 23 октября 2018

Вместо отправки формы вы можете сериализовать ее и отправить данные с помощью AJAX

$("#test-wizard").steps({
  headerTag: 'header',
  bodyTag: '.container',
  transitionEffect: "slideLeft",
  autoFocus: true,
  onStepChanged: function(event, currentIndex) {
    var formData = $('#skills-form').serialize(); // Gets the data from the form fields
    $.post('path_to/form_handler_file', formData)
  }
});
...