在表单提交后,如何在我的快递应用程序中获取复选框的值。这是我的把手表格,带有复选框init。
<form action="/userSpecialisation" id="selectYourSpec">
<div id="languages">
<label for="russian"> <input type="checkbox" id="russian" name="russian">Russian </label>
<label for="english"> <input type="checkbox" id="english" name="english">English </label>
<label for="france"> <input type="checkbox" id="france" name="france">France </label>
<label for="german"> <input type="checkbox" id="german" name="german">German </label>
<label for="spanish"> <input type="checkbox" id="spanish" name="spanish">Spanish </label>
<label for="italian"> <input type="checkbox" id="italian" name="italian">Իտալերեն </label>
<label for="arabian"> <input type="checkbox" id="arabian" name="arabian">Arabic </label>
<label for="persian"> <input type="checkbox" id="persian" name="persian">Farsi </label>
<label for="turkish"> <input type="checkbox" id="turkish" name="turkish">Turkish </label>
</div>
</div>
<div class="sectorSubDiv">
<input type="submit" name="sectorSubmit" id="selectorsSub" class="sectorSubmit" value="Հաստատել">
</div>
</form>
我只需要带有“languages”id的div。当用户选中复选框时,我需要获取该标签的语言。作为前端我使用车把模板引擎。作为后端,我正在使用node.js表达框架。有没有办法在没有jquery的情况下解决这个部分?如果现在它也会没问题。 感谢您的帮助和关注,抱歉语言错误。
答案 0 :(得分:0)
首先,input
元素使用不正确。使用现有的内容,您需要执行以下操作:
exports.myHandler = async (req, res) => {
const {
russian,
english,
france,
german,
spanish,
italian,
arabian,
persian,
turkish
} = req.body
// ... rest of logic
}
所有这些值都是undefined
,因为您没有指定apply the lookup table属性。所以要修复你的前端,你需要这样的东西:
<input type="checkbox" id="russian" name="languages" value="russian">
请注意,此示例中name
设置为languages
,value
为russian
。因此,当您有多个name="languages"
时,会转换为数组。所以你会这样访问它们:
exports.myHandler = async (req, res) => {
const { languages } = req.body
languages.forEach(language => console.log(language))
}
此答案假定您已配置value
。