我在HTML中有一个基本形式,如下所示:
<form id="myForm">
<input type="text" id="name" name="name" />
<br />
<input type="text" id="email" name="email" />
<input type="button" id="myButton" onclick="sendIt();">Send It</input>
</form>
<script type="text/javascript">
function sendIt() {
var endpoint = '/send-it';
var xhr = new XMLHttpRequest();
xhr.open('POST', endpoint, true);
xhr.send();
}
</script>
实际上,我的形式更大,并且有更多的领域。我试图弄清楚如何通过AJAX发布这个。以前,我使用方法=&#34; POST&#34;并在表格上采取行动。但是,我试图删除页面刷新。所以,我想通过JQuery来利用AJAX。
是否有一些简单的方法来序列化数据并发送它?我看到了以下内容:
var data = $.param('#myForm');
但是,这似乎只与追加查询字符串有关。如何使用jQuery通过AJAX将myForm
发布到我的服务?
谢谢!
答案 0 :(得分:1)
我相信你想要这样的东西
$.ajax({
type: "POST",
url: url,
data: data,
success: function () {},
dataType: dataType
});
请参阅jQuery.post
要序列化,您可以使用:
$('form').serializeArray()
然后你的代码:
function sendIt() {
var endpoint = '/send-it';
$.ajax({
type: "POST",
url: endpoint,
data: $('#myForm').serializeArray(),
success: function () {
alert('success post');
}
});
}