Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 分配数组项';基于复选框状态的值?_Javascript_Arrays_Mongodb - Fatal编程技术网

Javascript 分配数组项';基于复选框状态的值?

Javascript 分配数组项';基于复选框状态的值?,javascript,arrays,mongodb,Javascript,Arrays,Mongodb,我希望这能奏效: var title = document.getElementById('cat_title'); var active = document.getElementById('cat_active'); var category = { title: title.value, active: $(active).prop("checked"); } 提交表单时,如果选中复选框,则会在活动字段中插入“true”。当它未被检查时,它不会发送任何内容,但我希望它实

我希望这能奏效:

var title = document.getElementById('cat_title');
var active = document.getElementById('cat_active');

var category = {
    title: title.value,
    active: $(active).prop("checked");
}
提交表单时,如果选中复选框,则会在活动字段中插入“true”。当它未被检查时,它不会发送任何内容,但我希望它实际发送“false”

如果提交表单时未选中复选框,则保存文档的示例:

{
    _id: "lklajdlfjkasdf",
    title: "Some Title"
}
{
    _id: ";klajsdfadsf"
    title: "Some Title",
    active: true <-- saved as boolean, good.
}
选中复选框提交表单时保存的文档示例:

{
    _id: "lklajdlfjkasdf",
    title: "Some Title"
}
{
    _id: ";klajsdfadsf"
    title: "Some Title",
    active: true <-- saved as boolean, good.
}
{
_id:“klajsdfadsf”
标题:“一些标题”,

active:true即使该代码在数据库插入之前携带了假值,在数据库中插入假值只会使其成为空字段,这相当于将其设置为零

因此,您有两个选择:

1) 从数据库检索行时检查空字段


2) 在数据库中使用字符串值
“false”
,并检查是否存在该值

您能解释得更清楚一点吗?不能重新还原,在这里工作很好:这是JavaScript中的一个对象文本,类似于一种关联数组。它是否包含在事件处理程序中?请提供更多代码。请提供更多信息。
$(活动)。prop(“checked”)
将返回
false
,因此问题可能与处理此信息的代码有关。您在哪里检查
action
的值?这开始更有意义了。事实证明,当查看完整文档对象时,它确实会说“false”"作为布尔值,但在我的应用程序端,它将其解释为null,不显示任何内容,但将true解释为某物,并与我的模板助手一起显示单词true。因此,我通过客户端将其显示为完全空的mongo接口,但在mongo shell中,我可以看到它显示为false。感谢您为我指明了正确的方向。我的应用程序客户端的不清晰可能导致我的问题有点混乱。我感谢您的帮助。@user1447679 Anytime!“在数据库中插入假值只会使其成为空字段”我假设您在这里特别提到mongoDB?否则我会说这句话是冒昧的。它可能取决于数据库和列/字段的数据类型,以及值
false
的实际存储方式。