我的前端脚本包含以下 jQuery 代码:
$.get("/backend/post.php", {
title: title,
message: post,
stick: sticky
}, function (output) {
alert("Call Back");
}
}, "json");
stick 是一个 boolean 值,另外两个是字符串。我已经确认它们确实已经设置好了。现在在后端页面上,使用 $_GET、标题和消息并被传递,但 $_GET['stick'] 返回空,并且 PHP 函数 gettype() 告诉我它是 NULL。
请求其中一条评论:
sticky 来自表单,它是一个复选框,我只需使用以下代码选择它:
var sticky = $("input[name=sticky]").attr('checked');
当我使用alert()输出sticky的值时,它会根据选择的内容返回true/false。
为什么这个 boolean 值没有被传递? JSON 站点告诉我您可以在其中包含 boolean 值 true/false。但由于某种原因它在这里不起作用。
最佳答案
我不能完全确定,因为我自己没有测试过,但我认为这与 GET 请求如何作为字符串传输有关。尝试这样的事情:
var sticky = $("input[name=sticky]").attr('checked')?"true":"false";
$.get("/backend/post.php", {
title: title,
message: post,
stick: sticky
}, function (output) {
alert("Call Back");
}
}, "json");
这很可能行不通,但请尝试一下。
关于javascript - boolean 值未通过 jQuery/$.get 传递 - 为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3428097/