【发布时间】:2025-12-13 03:45:01
【问题描述】:
我尝试做的是从同一站点发布数据并从中创建新订单(单击提交按钮时)。我的 req.body 中没有任何信息,我怀疑是我的 ejs 出了问题,非常感谢任何反馈。
我的 ejs 文件:
<h1>Orders</h1>
<p>Orders from Coffee eShop.</p>
<pre><%#= JSON.stringify(res, null, 4) %></pre>
<form class="label-left" method="post">
<table>
<tr>
<th>Order ID </th>
<th>Customer ID </th>
<th>Name </th>
<th>Date </th>
<th>Product quantity </th>
<th>Status </th>
</tr>
<% for (const row of res) { %>
<tr>
<td><%= row.order_id %></td> <!-- trying to post this -->
<td><%= row.customer_id %></td> <!-- trying to post this -->
<td><%= row.customer_name %></td> <!-- trying to post this -->
<td><%= row.order_date %></td> <!-- trying to post this -->
<td><%= row.produkter_antal %></td><!-- trying to post this -->
<td><%= row.order_status %></td> <!-- trying to post this -->
</tr>
<% }; %>
</table>
<br>
<td><input type="submit" name="doit" value="Create new order"></td> <!-- trying to get this work -->
<br><br>
<a href="/eshop/customer" id="customerlink">Customers</a>
</form>
<br>
<%- include("footer"); %>
还有我的js文件:
router.get("/order/:id", async (req, res) => {
let id = req.params.id;
let data = {
title: `Customers order ${id} ${sitename}`,
ordernummer: id
}
data.res = await bank.showCustomerOrder(id);
res.render("eshop/order", data);
});
router.post("/order/:id", urlencodedParser, async (req, res) => {
console.log(req.body);
// this doesnt work... I dont get any info in req.body here
});
【问题讨论】:
-
我不确定我是否理解;你是如何发布它的?我看到一个没有输入字段的
<form>。 -
谢谢,原来如此。