передача данных в форме отправки через jquery / ajax - PullRequest
7 голосов
/ 08 мая 2011

Я хочу отправить форму с примерно 10 входами, используя jquery / ajax, но я не знаю, как я могу передать ей данные через параметры данных ajax. Должен ли я их сериализовать?

Ответы [ 2 ]

14 голосов
/ 09 мая 2011

jQuery.serialize может быть полезным для вас. Важно использовать свойство name для всех полей формы, которую вы хотите отправить. Соответствующий код может быть примерно следующим

$("form#myFormId").submit(function() {
    var mydata = $("form#myFormId").serialize();
    console.log(mydata); // it's only for test
    $.ajax({
        type: "POST",
        url: "myUrlToPostData.php",
        data: mydata,
        success: function(response, textStatus, xhr) {
            console.log("success");
        },
        error: function(xhr, textStatus, errorThrown) {
            console.log("error");
        }
    });
    return false;
});
4 голосов
/ 08 мая 2011
$.ajax({
type: "POST",
url: "handle.php",
data: "n="+name+"&e="+email,
success: function() {
alert('It worked');
}
});

Вот самый простой способ его использования.Это просто отправит две переменные post, $ _POST ['n'] и $ _POST ['e'], для обработки.Ваша форма будет выглядеть так, если ваш ajax находится в функции с именем send ():

<form id="form" onsubmit="send(this.name.value, this.email.value); return false;">
...