我试图通过AJAX传递名称值并将alert
值传递出去,同时将值存储在数据库中。出于某种原因,这个值没有在AJAX中被提取,我不知道为什么,因为我给了我的输入字段id
name
并在submit.js中引用它
<form method="post" id="submit_form">
<input type="text" id="name" placeholder="username"><br>
<input type="submit" id="save_button" value="Submit">
</form>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script type="" src="submit.js"></script>
// in submit.js...
$('#save_button').click(function(e) {
var name = $('#name').val();
e.preventDefault();
$.ajax({
data: name,
type: "post",
url: "submit.php",
success: function(data) {
alert("Data Save: " + data);
}
});
});
答案 0 :(得分:1)
您需要为data
的{{1}}属性提供键/值对。
要执行此操作,您可以使用对象:
$.ajax
或者,您可以data: { "name": name },
serialize()
中包含的值。这将使jQuery根据指定表单中的所有字段的值创建一个适当编码的查询字符串。
form
最后你可以自己构建一个查询字符串 - 虽然这不是最佳实践,因为jQuery会在使用上述任何一种方法时为你编码值。
data: $('#submit_form').serialize(),
答案 1 :(得分:0)
更改data: name
到data:{'name':name}
答案 2 :(得分:0)
这只是将所有表单字段值传递给ajax
$('#save_button').click(function(e) {
e.preventDefault();
$.ajax({
data: jQuery('#submit_form').serialize(),
type: "post",
url: "submit.php",
success: function(data){
alert("Data Save: " + data);
}
});
});