2014-11-07 3 views
0

У меня есть этот код для отправки 1 формы на клик.отправить несколько форм, используя JQuery ajax

$('#verify_id').click(function() { 
var formData = new FormData($('form#verify_id_form')[0]); 
$.ajax({ 
    type: 'post', 
    url: '/public_transaction/verify_id', 
    data: formData, 
    async: false, 
    success: function (res) { 
     alert(res); 
    }, 
    cache: false, 
    contentType: false, 
    processData: false 
}); 
return false; 
}); 

Но, я хочу представить еще 2 формы с этим. Как я могу изменить data, чтобы отправить несколько форм? ID других двух форм: #form1 и #form2. Как изменить эту строку?

var formData = new FormData($('form#verify_id_form')[0]); 

EDIT

есть вариант в AJAX, чтобы сделать что-то вроде этого ...

var dataString = $("#filter-group1, #filter-group2").serialize(); 
(here 2 forms are getting submitted bu just 1 click) 

Но, я не знаю, как добиться этого в моем случае?

+0

3 формы, 3 запроса. Если вы не можете сконденсировать их в 1 запрос, но ваша конечная точка должна быть настроена для обработки такой операции. –

+0

Вы не можете использовать несколько форм «POST» в одном запросе. Конечно, вы можете объединить значения формы, отправить один за другим. Но не сразу несколько форм. – George

+0

Это ID формы. Я хочу представить 3 формы вместе. –

ответ

0

Если вы не используете «ajax: false» и отправляете все 3 формы, поскольку $ .ajax является асинхронным, все формы будут представлены неблокируемым способом.

$('#verify_id').click(function() { 
    $.ajax({ 
     //code for form 1 
    }); 
    $.ajax({ 
     //code for form 2 
    }); 
    $.ajax({ 
     //code for form 3 
    }); 
    return false; 
}); 
Смежные вопросы