Всем доброго времени суток! Появился следующий вопрос: Есть ajax-запрос:
$("#first_form").submit(function() {
$.ajax({
type: "POST",
url: "rest.php",
data: $(this).serialize()
}).done(function() {
alert("Спасибо за заявку!");
});
return false;
});
Как сделать, чтобы в параметре data передать еще несколько параметров? Мне нужно, чтобы туда передавались, к примеру, переменные first и second, а в php файл данные в итоге поступали в массиве $_POST, т.е. $_POST['first'] и $_POST['second']?
Заранее спасибо!)
$(this).serialize()
возвращает вам form-urlencoded
строку вида:
param1=val¶m2=val2
На сервере, это благополучно парсится в массив $_POST
.
В jQuery
есть функция $.param, которая превращает js-объект в такую строку.
Ничто не мешает вам через '&' добавить нужные вам данные:
$("#first_form").submit(function() {
$.ajax({
type: "POST",
url: "rest.php",
data: [$(this).serialize(), $.param({second: 222})].join('&')
}).done(function() {
alert("Спасибо за заявку!");
});
return false;
});
Использовать для этого JSON формат:
$("#first_form").submit(function() {
$.ajax({
type: "POST",
url: "rest.php",
data: { first: $(this).serialize(), second: 'blah' }
}).done(function() {
alert("Спасибо за заявку!");
});
return false;
});
Не профи в jquery, но я обычно для POST-запроса использую
$.post('test.php', {first:'Ivan',second:'Petrov'}).done(function(result) {
alert(result);
});
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
In my app I have such folder structure for styles