gpt4 book ai didi

node.js - Node Express Jade - 复选框 boolean 值

转载 作者:搜寻专家 更新时间:2023-10-31 23:29:06 25 4
gpt4 key购买 nike

我正在使用 Node+Express+Jade 呈现一些网页。在一个表单上有 2 个复选框。通过 POST 提交表单时,如果复选框被选中,我得到 req.body.checkbox1 -> 'on',如果没有被选中,我得到 req.body.checkbox1 -> 未定义

是否可以将复选框的值设为 truefalse

这是我的服务器端测试代码

var bodyParser = require('body-parser');
var express = require('express');

var app = express();
app.use(bodyParser.urlencoded({extended: true}));
app.use(express.static(__dirname + '/webroot'));
app.set('views', __dirname + '/view');
app.set('view engine', 'jade');
app.listen(3001);
app.get('/', function (req, res) {
res.render('test');
});

app.post('/config', function (req, res) {
console.log(req.body.t);
console.log(req.body.f);
res.redirect('/');
});

还有我的 Jade 式测试

form(action='/config', method='post')
input(type="checkbox", name="not_checked", checked=false)
input(type="checkbox", name="checked", checked=true)
input(type='submit')

最佳答案

我最近正在为一个项目解决这个问题......

这是表格:

form(action='/survey/submission/test/config', method='post')
input(type="checkbox", name="1")
input(type="checkbox", name="2")
input(type="checkbox", name="3")
input(type="submit")

然后在 Node javascript 中可以通过每个的 req.body.name 找到它们。如果选中其中一个框,req.body.name 将返回“on”。如果未选中某个框,则它们未定义。因此三元语句可用于创建新对象并将它们作为 boolean 值保存到数据库中。

object = {
first: req.body.1 ? true : false,
second: req.body.2 ? true : false,
third: req.body.3 ? true : false
};

希望这对其他人有帮助。弄清楚后我很高兴

关于node.js - Node Express Jade - 复选框 boolean 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32203418/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com