【问题标题】:Jade and Express.js - req.body.[name of form] is undefinedJade and Express.js - req.body.[name of form] 未定义
【发布时间】:2016-03-14 14:04:36
【问题描述】:

我正在尝试使用下拉表单更新数据库,但 req.body.[表单名称] 未定义。

控制台中的req.body 显示{}。

这是我的 lev.js:

router.post('/kundeendring', function(req, res) {
    var test1 = req.body.ansvarlig;
    console.log(test1);

这是我的 lev.jade 中的表格:

form#kunde(method="post", action="kundeendring")
    select (name= "ansvarlig")
        option(value='Kim', selected=kim) Kim 
        option(value='Christer', selected=christer) Christer
        option(value='Hege', selected=hege) Hege
        option(value='Morten', selected=morten) Morten
        option(value='Andre', selected=andre) Andre
    h3= "Lagre"
    button#btnSubmit(type="submit") submit

我还使用 express 生成器自动安装了 bodyParser:

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

app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));

当我点击提交按钮时,test1 是'未定义'。

编辑:修复了缺少的括号。

编辑:这在 lev.jade 中有效,但仍然无法将其转移到下拉列表中:

form#formAddUser(name="adduser",method="post",action="kundeendring")
    input#inputUserName(type="text", placeholder="username", name="username")
    input#inputUserEmail(type="text", placeholder="useremail", name="useremail")
    button#btnSubmit(type="submit") submit

【问题讨论】:

  • 修复 lev.jade 中的第二行:select(name="ansvarlig")
  • 对不起。固定的。它在我的原始代码中。
  • 您可以在浏览器中查看您实际发送的内容吗?
  • DenisFrezzato 我以为你只提到了缺少的括号。如果我只是更关注你写的东西。

标签: javascript node.js express pug dropdown


【解决方案1】:

这是一个简单而愚蠢的空白错误。

选择标签没有名字。

更改为select(name= "ansvarlig") 解决了所有问题。

【讨论】:

    猜你喜欢
    • 2012-02-28
    • 2012-07-03
    • 2015-01-30
    • 1970-01-01
    • 2022-12-27
    相关资源
    最近更新 更多