形式:
<form action="" id="register" method="post">
<input type="text" placeholder="eg. John">
<input type="text" placeholder="eg. Appleseed">
<input type="text" placeholder="youremail@domain.com">
</form>
JS:
$('form#register').on('submit',function (e) {
$.ajax({
url: 'submit.php',
cache: false,
type: 'POST',
context: this,
data : $(this).serialize(),
success: function(json) {
console.log("json: " + json);
}
});
e.preventDefault();
});
PHP:
$formData = json_encode($_POST);
echo print_r($formData,1);
...在填写表单并点击提交后,它确实提交了表单而没有错误,但返回的数据(JSON)为空:
json: []
我做错了什么?
答案 0 :(得分:4)
这是因为您未在字段中使用name
属性
serialize()
表单中需要name
字段
答案 1 :(得分:2)
1: -
$formData = json_encode($_POST);
echo print_r($formData,1);
应该是: -
$formData = json_encode($_POST);
echo $formData;
2.您的表单字段中没有name
属性。请提供,否则serialize()
将无法正常工作。