Tenho o seguinte formulário que permite ao usuário editar seu conteúdo. O formulário possui duas tags de entrada e uma textarea
tag.
Eu esperava que o Express retornasse o valor da entrada e textarea
, mas o textarea
estava vazio, deixando apenas o input
valor da tag para retornar.
Tentei trocar a textarea
tag por input
e funcionou, mas como a input
tag é uma tag de texto de linha única, quero uma tag de texto de várias linhas para lidar com parágrafos longos do usuário.
Aqui está meu código:
app.post("/editBlog", (req, res) => {
// console.log(`Edit blog at index: ${editBlogIndex}`);
const blogToEdit = posts[editBlogIndex];
// console.log(blogToEdit);
blogToEdit.fname = req.body["fullname"];
blogToEdit.title = req.body["title"];
blogToEdit.blogContent = req.body["content"];
res.render("edit-blog.ejs", {
posts: posts
});
})
Aqui está o código do arquivo expresso:
<form action="/editBlog" method="post">
<div class="form-group">
<label for="fullname">名前:</label>
<input type="text" id="fullname" name="fullname" placeholder="フルネーム" value="<%= blogEdit.fname %>"><br>
</div>
<div class="form-group">
<label for="title">タイトル:</label>
<input type="text" id="title" name="title" placeholder="投稿タイトル" value="<%= blogEdit.title %>"><br>
</div>
<div class="form-group">
<label for="content">内容:</label>
<textarea id="content" name="content" placeholder="投稿内容" value="<%= blogEdit.blogContent %>" style="height:200px"></textarea>
</div>
<div class="d-grid gap-2 col-6 mx-auto">
<button type="submit" class="btn btn-primary">Submit</button>
</div>
</form>
Como faço para obter o retorno expresso do valor da textarea
tag?