如何使用Node.js将select选项的值显示为响应

如何使用Node.js将select选项的值显示为响应,node.js,express,body-parser,Node.js,Express,Body Parser,我不熟悉Node.js和Express 我试图从HTML页面的选择列表中获取所选选项,并使用node.js显示为响应 HTML 当我尝试使用代码res.write${month}打印响应时;它显示选项的值,如1、2、3等,但我必须显示文本,如一月、二月等 请帮我解决这个问题: 编辑: 我不应该更改HTML文档,因此我无法将选项值从1、2、3更改为1月、2月等 客户端 使用querySelector获取值的option元素,然后获取其innerText document.getElementBy

我不熟悉Node.js和Express

我试图从HTML页面的选择列表中获取所选选项,并使用node.js显示为响应

HTML

当我尝试使用代码res.write${month}打印响应时;它显示选项的值,如1、2、3等,但我必须显示文本,如一月、二月等

请帮我解决这个问题:

编辑:

我不应该更改HTML文档,因此我无法将选项值从1、2、3更改为1月、2月等

客户端 使用querySelector获取值的option元素,然后获取其innerText

document.getElementById'submit'。onclick==>{ const select=document.querySelectorselect[name='monthofbirth'] 常量值=select.value; const option=select.querySelector`option[value='${value}']` const text=option.innerText console.logtext } 一月 二月 前进 四月 也许 六月 七月 八月 九月 十月 十一月 十二月 提交
这是正常的,因为附加到每个选项的值是数字1,2,3,4

<select name="monthofbirth">
    <option value="January">January</option>
    <option value="February">February</option>
    <option value="March">March</option>
    <option value="April">April</option>
    <option value="May">May</option>
    <option value="June">June</option>
    <option value="July">July</option>
    <option value="August">August</option>
    <option value="September">September</option>
    <option value="October">October</option>
    <option value="November">November</option>
    <option value="December">December</option>
</select>

最简单的方法是简单地使这些值表示您尝试使用的月份。是否有理由将值作为月份编号而不是名称?

您可以使用月份名称作为每个选项的值,而不是编号我不应该编辑HTML文档,因此我无法使用该选项:他不想在前端看到月份名称,因为res.write${month};在服务器中的express中side@YvesKipondo谢谢你。我更新了答案。上面的答案帮助我获得了结果。但我只是想知道除了声明常量还有什么其他方法吗?在Java中,可以使用locale来获取对象名,但在Javascript中则不行。您可以使用诸如矩之类的库来获取名称,还可以使用区域设置风格。我将在我的答案中添加一个链接。但这只是另一个人“声明常量”。
var express = require('express')
var bodyParser = require("body-parser");
var app = express()

app.use(express.static('public'))

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

app.post('/survey', function (req, res) {
    let month = req.body.monthofbirth;
});

app.listen(3000, function () {
    console.log('Example app listening on port 3000!')
})
<select name="monthofbirth">
    <option value="January">January</option>
    <option value="February">February</option>
    <option value="March">March</option>
    <option value="April">April</option>
    <option value="May">May</option>
    <option value="June">June</option>
    <option value="July">July</option>
    <option value="August">August</option>
    <option value="September">September</option>
    <option value="October">October</option>
    <option value="November">November</option>
    <option value="December">December</option>
</select>