node.js req.body显示为空

时间:2017-04-05 01:34:07

标签: node.js express

学生列表显示如下,当我点击详细信息按钮时发生问题(没有req.body数据,console.log(req.body)显示[]) enter image description here

student.jade

extends layout

block content
    h1 Student list
    .studentlist
       table
            thead
                tr
                    th name
                    th age
            tbody               
                 each mongo_result, i in slist
                     form(action='/detail', method="POST") 
                        tr                                                   
                            td(type="text" name="name")= mongo_result.name
                            td(type="text" age="age")= mongo_result.age                             
                                button.btn-primary(type="submit" width='50' height='50') Detail

app.js

    app.use(express.favicon());
    app.use(express.logger('dev'));
    app.use(express.json());
    app.use(express.urlencoded());
    app.use(express.methodOverride());
    app.use(require('stylus').middleware(path.join(__dirname, 'public')));
    app.use(express.static(path.join(__dirname, 'public')));
    app.use(app.router);
    app.use(bodyParser.json());
    app.use(bodyParser.urlencoded({ extended: true }));
    app.use(express.bodyParser());

app.post('/detail', (req, res) => {    
//var data = res.json({ result: result });
console.log(req.body);
dbs.collection('slist').find({ name: req.body.name, age:1}).toArray((err, docs) => {
    if (err) return console.log(err)
    console.log(docs);
    res.render('detail', { title: 'Detail', year: new Date().getFullYear(), message: 'Detail of student', detail: docs});
}); 


})

我已尝试过其他帖子中的所有内容但是 我还没有得到答案。 我正在为学生创建一个详细信息页面,当我尝试它时,req.body总是空的。(每个表格都有名称和年龄,我想在点击按钮时发送它) 对我来说有什么想法? 谢谢你的阅读。

1 个答案:

答案 0 :(得分:0)

表单行为似乎不包含表格元素。

只使用样式化的html而不是表格(例如div div div!)