У меня есть форма на моей странице "welcome.e js". На данный момент я просто пытаюсь вывести текст, введенный пользователем в «welcome.e js», на новую страницу «submitform.e js». Страница успешно маршрутизируется, если я не пытаюсь вывести текст из формы.
Я получаю следующую ошибку:
ReferenceError: C:\Users\hbhar\Desktop\Basic WebApp\views\submitform.ejs:2
1| <h1>Form Submitted!</h1>
>> 2| <<p><%= parsedbody %></p>
3|
parsedbody is not defined
at eval (eval at compile (C:\Users\hbhar\Desktop\Basic WebApp\node_modules\ejs\lib\ejs.js:649:12), <anonymous>:12:26)
at submitform (C:\Users\hbhar\Desktop\Basic WebApp\node_modules\ejs\lib\ejs.js:679:17)
at tryHandleCache (C:\Users\hbhar\Desktop\Basic WebApp\node_modules\ejs\lib\ejs.js:272:36)
at View.exports.renderFile [as engine] (C:\Users\hbhar\Desktop\Basic WebApp\node_modules\ejs\lib\ejs.js:478:10)
at View.render (C:\Users\hbhar\Desktop\Basic WebApp\node_modules\express\lib\view.js:135:8)
at tryRender (C:\Users\hbhar\Desktop\Basic WebApp\node_modules\express\lib\application.js:640:10)
at Function.render (C:\Users\hbhar\Desktop\Basic WebApp\node_modules\express\lib\application.js:592:3)
at ServerResponse.render (C:\Users\hbhar\Desktop\Basic WebApp\node_modules\express\lib\response.js:1012:7)
at ServerResponse.res.render (C:\Users\hbhar\Desktop\Basic WebApp\node_modules\express-ejs-layouts\lib\express-layouts.js:77:18)
at C:\Users\hbhar\Desktop\Basic WebApp\routes\index.js:15:9
My index. js файл (находится в / routes ):
const express = require('express');
const router = express.Router();
// Welcome Page
router.get('/', (req, res) => res.render('welcome'));
router.get('/submitform', (req,res) => res.render('submitform'))
// After Form Submission
router.post('/submitform', function(req, res)
{
const parsedbody = {};
const formsubmission = JSON.stringify(req.body);
parsedbody[formsubmission] = formsubmission;
res.render('submitform', parsedbody);
});
module.exports = router;
Моя основная страница «welcome.e js»:
<form action="/submitform" method="POST">
<label for="name">Name</label>
<input
type="name"
id="name"
name="name"
class="form-control"
placeholder="Name"
</input>
<button type="submit"></button>
</form>
Мой файл «submitform.e js», который перенаправлен на указанный выше (I ' Мы также пробовали варианты объекта ответа):
<h1>Form Submitted!</h1>
<<p><%= parsedbody %></p>
Спасибо!