#javascript #node.js #post #crud
Вопрос:
Я пытаюсь извлечь значения множественного выбора из формы.
Код JS
router.post('/profile', (req, res)=>{
console.log(req.body.name);
})
HTML /профиль
<div class="form-group" method="POST">
<br>
<select class="form-control multiselect" multiple="multiple">
{{#team}}
<option value="{{name}}" name="{{name}}">{{name}}</option>
{{/team}}
</select>
<div class="form-group">
<button type="submit" class="btn btn-primary btn-block">Update Members<i class="icon-circle-right2 ml-2"></i></button>
</div>
</div>
При отправке я не могу зарегистрировать тело.
Ответ №1:
В вашем коде есть несколько проблем.
- Прежде всего, поскольку вы передаете переменную в качестве имени
name="{{name}}"
, я предполагаю , что переменная имеет значение, равноеname[]
, обратите внимание, что вам нужно добавить скобки массива, чтобы отправить несколько значений для одного и того же ключа. - Также
method="POST"
атрибут должен быть добавлен в тег формы, а не в div.
В конце концов, ваш код должен быть похож на приведенный ниже код:
<form method="POST">
<div class="form-group">
<br>
<select class="form-control multiselect" multiple="multiple" name="name[]">
{{#team}}
<option value="{{name}}" >{{name}}</option>
{{/team}}
</select>
<div class="form-group">
<button type="submit" class="btn btn-primary btn-block">Update Members<i class="icon-circle-right2 ml-2"></i></button>
</div>
</div>
</form>
Комментарии:
1. Это не возвращает никакой ценности. Вывод: {}