我是新手使用nodejs,也许问题描述不是那么清楚,因为我没有发布我想做的所有任务,这可能有点压倒性。
以下是程序:
问题是,现在我可以从控制台看到规划器结果,但是客户端页面不会指向/ planner页面,或者是否有其他方式向客户端显示结果,比如显示控制台输出原始索引页?
index.ejs:
<h2><%= title %></h2>
<% for(var i=0; i<data.length; i++) {%>
<li><%= data[i] %></li>
<% } %>
<form id="planner" method="GET" action="/planner">
<input type="TEXT" id="p" size="40"><br>
<input type="TEXT" id="t" size="40"><br>
<input type="TEXT" id="l" size="40"><br>
<input type="TEXT" id="u" size="40"><br>
<input type="TEXT" id="g" size="40"><br>
<input type="button" id="submit" value="Submit">
</form>
index.js
//planner() omitted...
router.get('/planner', function(req, res){
var p=req.query.p;
var t=req.query.t;
var l=req.query.l;
var u=req.query.u;
var g=req.query.g;
console.log(p+"\n"+t+"\n"+l+"\n"+u+"\n"+g);
planner(p, t, l, u, g, function(planner_output){
res.render('index', {
title: 'Planner Outputs:',
data: planner_output
});
});
谢谢。
答案 0 :(得分:0)
最后我发现了这个错误并且它真的很愚蠢,Express的res.render()在这里很好但我错误地使用了按钮的类型:
<input type="button" id="submit" value="Submit">
应该是
<input type="submit" value="Submit">
答案 1 :(得分:0)
<input type="submit" id="submit" value="Submit">
输入类型必须提交