为了账号安全,请及时绑定邮箱和手机立即绑定

EJS 中的数组在 NodeJS 中返回未定义和空值 - Express

EJS 中的数组在 NodeJS 中返回未定义和空值 - Express

莫回无 2022-12-18 16:12:36
这是我的 ejs 代码<% var tag = [''] %><form action="/like" method="POST">    <% for (var i in tag){%>        Tag: <input type="text" name="likes[]" value="<%= tag[i].likes %>"/><br><br>             <button type="submit" value="accept">Send Tag</button><br><br><hr>    <%} %></form>这是我的 controller.js 代码control.post('/like', (req, res, next) => {    let tags = [req.body.likes];    console.log(tags);    iglike(tags);    next();    res.send(tags);     });当我[]从name = "likes[]"代码中删除时,会完美地返回输入的数据。但是在控制台日志中name = "likes[]" 返回代码。undefined 例如:喜欢 []Input : App, WebOutput: [null] , In Console: Undefined没有喜欢[]Input: app, webOutput: ['app, web'] ( Stores them into single array)我希望我的输出是Input: app, example, thanksOutput: ['app','example','thanks']我正在使用 EJS 视图引擎和 node-express 我app.use(express.urlencoded({extended: false}))也在我的 app.js 中添加了代码。
查看完整描述

1 回答

?
动漫人物

TA贡献1815条经验 获得超10个赞

更改扩展为真:

app.use(express.urlencoded({extended: true}))

并从 req.body.likes 中删除方括号:

let tags = req.body.likes;


查看完整回答
反对 回复 2022-12-18
  • 1 回答
  • 0 关注
  • 123 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号