我希望这会奏效:
var title = document.getElementById('cat_title');
var active = document.getElementById('cat_active');
var category = {
title: title.value,
active: $(active).prop("checked");
}
提交表单时,如果选中该复选框,则会在活动字段中插入“true”。当它没有被检查时,它什么也没发送,但我希望它实际上发送“假”。
如果已提交表单而未选中复选框,则保存文档的示例:
{
_id: "lklajdlfjkasdf",
title: "Some Title"
}
如果提交表单,则保存的文档示例选中复选框:
{
_id: ";klajsdfadsf"
title: "Some Title",
active: true <-- saved as boolean, good.
}
我想将逻辑保留在数组中。我理解另一种处理这个问题的方法......好吧有几个。我可以执行一些if / else并推送到数组,但我觉得我对这个数组缺少一些简单的东西。
谢谢!
--------编辑---------
要求的详细信息:
我在MongoDB中将记录作为文档插入。如果未选中该复选框,则不会向活动键/值对中插入任何内容。为了回答各种评论,我需要将其作为布尔值,而不是字符串。我正在尝试一些建议,并将更新。非常感谢你....我还更详细地更新了我的问题。
答案 0 :(得分:1)
即使该代码将false值传递给数据库插入,将false值插入数据库也只会使其成为空字段,这相当于将其设置为空。
所以你有两个选择:
1)从数据库中检索行时检查空字段
OR
2)在数据库中使用"false"
的字符串值,然后检查