【发布时间】:2017-10-11 18:33:49
【问题描述】:
我正在尝试解决一些奇怪的事情。我有一个简单的 submitHandle 将一位数据传递给我的 PHP 文件
submitHandler: function (form) {
$.ajax({
type: "POST",
url: "form-process.php",
data: {
'customer': $("input[name='customer']:checked").val()
}
}).done(function (response) {
console.log(response)
}).fail(function (jqXHR, textStatus) {
console.log(textStatus)
});
return false;
}
如果我输出 $("input[name='customer']:checked").val() 我得到的是或否的预期值。现在在我的 PHP 文件中,我只是在做
echo json_encode($_POST["customer"]);
这似乎产生了错误
未定义索引:客户
如果我只检查$_POST,它会返回一个空数组。
我在这里遗漏了什么吗?这些数据没有进入后端是否有原因?
【问题讨论】:
-
检查 devtools 中的 network 选项卡,查看 post 数据是否与请求一起发送。
-
你能告诉我们使用的 Jquery 版本吗??
-
当然,jQuery v2.1.4 和 jQuery 验证插件 - v1.17.0
-
所以这个 ajax 请求对于你的语法来说已经过时了 api.jquery.com/jquery.ajax 1.4
-
如果我是你,在检查 PHP 文件中
$_POST数组的值之前,我会在 Web 浏览器的 JavaScript 开发人员控制台中测试$("input[name='customer']:checked").val()的值。 IE。console.log($("input[name='customer']:checked").val())。在将其发送到 PHP 文件之前,请确保您在 JS 中获得了正确的值。您的 Ajax 帖子语法看起来不错。
标签: javascript php jquery jquery-validate