#html #node.js
Вопрос:
Задача заключается в следующем. Пользователь (Администратор) проверяет правильность записей, а затем нажимает кнопку «Принять» или «отклонить». Таких записей несколько (3, но я не думаю, что это имеет значение), у каждой записи есть 2 такие кнопки. Я пытался сделать что-то вроде
lt;form action="/admin" method="POST"gt; lt;input type="button" name="button" value="accept" class="admin-buttons"gt; lt;/formgt; lt;form action="/admin" method="POST"gt; lt;input type="button" name="button" value="decline" class="admin-buttons"gt; lt;/formgt;
а затем на сервере
app.post('/admin', checkAuthenticated, (req, res) =gt; { if (req.body.button.value == 'accept'){} // changes on db }
Но это не сработало, так что я здесь.
Ответ №1:
Обнаружена ошибка, код ниже должен работать
app.post('/admin', checkAuthenticated, (req, res) =gt; { if (req.body.button == 'accept'){} // changes on db }
req.body.button.value
даст вам неопределенное значение, так как его кнопка принятия будет объектом
В следующий раз console.log(req.body) для лучшей отладки
И для ваших бланков
lt;form action="/admin" method="POST"gt; lt;input type="text" name="button" value="accept" class="admin-buttons" hidden=""gt; lt;input type="submit" name="button" value="accept" class="admin-buttons"gt; lt;/formgt; lt;form action="/admin" method="POST"gt; lt;input type="text" name="button" value="decline" class="admin-buttons" hidden=""gt; lt;input type="submit" name="button" value="decline" class="admin-buttons"gt; lt;/formgt;
Комментарии:
1. Я даже не могу получить запрос на публикацию из этой формы 🙁
2. @n33t Я обновил решение, это должно сработать __ не забудьте нажать кнопку ответа, если это решит ваши проблемы
3. много чего :):):):)