【发布时间】:2018-11-22 12:10:36
【问题描述】:
我有一个简单的表格。
它 POST 到服务器(节点 js / express),并且在选中时有一个带有“真”值的复选框。
<form id="demo_form" action="/submit_demo" method="POST">
<input type="checkbox" id="demo_input" name="demo_input" value=true />
</form>
当我在服务器上收到数据时,我的值用引号括起来 - 例如。 “真”。
这会在向我的 api 提交数据时导致问题,该 api 严格接受布尔值作为 true(无引号)。
在提交到我的 api 之前,我可以轻松地手动从任何数据中删除引号,但是在处理大量字段时会有点痛苦。
是否有一个简单的解决方案可以将布尔值从表单发送到服务器而不是字符串?
任何意见都非常感谢:)
【问题讨论】:
-
POST/GET 参数没有有任何“类型”,值总是作为字符串发送。
-
复选框不是这样工作的。如果选中,它们将作为常规键值对在提交的数据中,键是名称。没有检查,完全没有。因此,布尔值存在/不存在,从不在
value中。
标签: javascript node.js forms express boolean