我有以下 ejs 文件,我想捕获 NAME 字段值,以便从数据库中获取相应的详细信息并显示到另一个页面上。我知道如何使用表单标签来做到这一点,但我不确定在这种情况下如何捕获。任何帮助,将不胜感激。谢谢。
search.ejs 文件:
<a href="/menu/<%= tablelist[i].NAME %>">
<img alt="<%= tablelist[i].NAME %>" class="restaurant-card-cover" src="<%= tablelist[i].IMAGELINK %>" style="height: 115px;">
<div class="restaurant-card-content-text">
<div id="catererName" class="restaurant-card-name heading-color" variable="<%= tablelist[i].NAME %>"><%= tablelist[i].NAME %></div>
<div class="card-description"><%= tablelist[i].DESC2 %></div></a>
在 app.js 文件中,我添加了以下内容:
app.get('/menu/:name', routes.menu(ibmdb,connString));
而且,我还有另一个文件夹“routes”,我在 index.js 文件中提到了我的所有 SQL 查询。这里是:
exports.menu = function(ibmdb,connString) {
return function(req, res) {
var name = req.param.name;
ibmdb.open(connString, function(err, conn) {
if (err ) {
res.send("error occurred " + err.message);
}
else {
conn.query("SELECT ITEM_NAME, PRICE FROM HOMEBASEDAPP.MENU WHERE CATERER_NAME='"+name+"';", function(err, tables, moreResultSets) {
if ( !err ) {
res.render('menu', {"tablelist" : tables, name: name});
} else {
res.send("error occurred " + err.message);
}
/*
Close the connection to the database
param 1: The callback function to execute on completion of close function.
*/
conn.close(function(){
console.log("Connection Closed");
});
});
}
} );
}
}
我试图在 menu.ejs 文件中打印“名称”,但它没有得到值。