我想使用jquery / ajax提交一个包含大约10个输入的表单,但我不知道如何通过ajax的数据参数将数据传递给它。我会将它们序列化吗?
答案 0 :(得分:14)
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;
});
答案 1 :(得分:4)
$.ajax({
type: "POST",
url: "handle.php",
data: "n="+name+"&e="+email,
success: function() {
alert('It worked');
}
});
这是使用它的最简单方法。这只会向handle.php发送两个post变量$ _POST ['n']和$ _POST ['e']。如果你的ajax在一个名为send()的函数中,你的表单看起来像这样:
<form id="form" onsubmit="send(this.name.value, this.email.value); return false;">