我正在使用Node+Express+Jade来渲染一些网页。在一个表单中有2个复选框。当表单通过POST提交时,如果复选框被选中,我会得到
是否可能获取复选框的值为
这是我的服务器端测试代码。
我的玉表单测试
req.body.checkbox1 -> 'on'
,如果没有被选中,我会得到req.body.checkbox1 -> undefined
。是否可能获取复选框的值为
true
或false
?这是我的服务器端测试代码。
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('/');
});
我的玉表单测试
form(action='/config', method='post')
input(type="checkbox", name="not_checked", checked=false)
input(type="checkbox", name="checked", checked=true)
input(type='submit')
first: !!req.body[1]
以此类推。通过逻辑非运算符,我们可以得到表达式的相反布尔值,并通过另一个逻辑非运算符将其反转回来。结果与答案中的代码相同。 - 1valdis