Как передать несколько различных data параметров через ajax?

Есть форма с большим количеством полей и полями для загрузки файлов. Посмотрел как работает загрузка файлов через Ajax. Там создается FormData, в которую уже подключаются объекты. Но я так и не понял можно ли туда же добавлять данные из формы, взятые через .serialize()
Сразу возникает идея передавать два data в Ajax по порядку, но как это сделать правильно, не понимаю. Какие есть пути решения?
  • Вопрос задан
  • 154 просмотра
Пригласить эксперта
Ответы на вопрос 1
@PavelFokeev
pavl1k.ru
Попробуйте так:

function sendReview(form) {
    var data = new FormData();
    /*
        тут подготавливаем FormData для передачи файлов
    */
    // добавляем поля формы
    $.each( $('#review-form-sender').serializeArray(), function( i, field ){
        data.append( field.name, field.value );
    });

    jQuery.ajax({
    url: "/wp-content/themes/gorbunov_v2/mail/mail.php",
    data: data,
    type: "POST",
    success:function(data){
      $("#mail-status").html(data);
        $(".mail-status").show(300);
    },
    error:function (){
      $('#mail-msg', form).html(data);
      $('#mail-msg', form).css('red');
    }
    });

}
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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