【发布时间】:2019-12-27 22:48:31
【问题描述】:
我有一个非常简单的表单,它有一个名字的输入字段。我捕获表单数据并使用标准 jQuery 发布方法通过 ajax 将其传输到 PHP 页面。但是,我根本无法从 PHP 页面获得任何响应,即在服务器端捕获了任何数据。我不确定我做错了什么或缺少什么。
这是我的代码。
表格:
<form action="process.php" method="POST">
<div class="form-group">
<div class="form-row">
<div class="col-md-6 mb-3">
<label for="firstName">First name</label>
<input type="text" class="form-control" name="firstName" id="firstName" placeholder="First name">
<div class="d-none" id="firstName_feedback">
<p>Please enter a first name.</p>
</div>
</div>
</div>
</div>
<button class="btn btn-primary" type="submit">Submit form</button>
</form>
这是我的 Jquery Ajax 调用:
<script>
$(document).ready(function() {
$('form').submit(function(event) {
var formData = $("form").serialize();
console.log(formData);
$.ajax({
type: 'POST',
url: 'form.php',
data: formData,
dataType: 'json',
encode: true
})
.done(function(data) {
console.log(data);
});
event.preventDefault();
});
});
</script>
这是我的 PHP 页面:
if(isset($_POST['formData']))
$ajaxData = ($_POST['formData']);
echo $ajaxData;
{
}
【问题讨论】:
-
formData是您将输入序列化到的变量的名称。它不是查询参数名称。查询参数名称将是您表单中的输入名称。在此示例中,$_POST['firstName']将出现
标签: javascript php jquery html ajax