我有一个带有一些复选框的html表单,我希望node.js服务器使用存储在.json文件中的信息处理客户端输入,并将结果发送回客户端到另一个页面。
它根据可用的成分(在表单中检查)检查是否可以制作配方(许多存储在.json文件中)。
到目前为止,我能够搜索并编程这个网站,以便我可以发送表单,处理它(下面的代码很简短)并得到结果,但我不知道是什么与它有关,它只是在页面中显示为纯.json(这是我发送的,这是正常的。)
html部分:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Recipes</title>
</head>
<body class="container">
<main>
<form action="/search_result" method="post">
<input type="checkbox" name="beef_roast"> Beef
<input type="checkbox" name="beef_roast"> Pork
<input type="checkbox" name="beef_roast"> Fish
<button type="submit" class="btn btn-default">Search recipe</button>
</form>
</main>
</body>
</html>
node.js部分
var express = require('express');
var app = express();
const bodyParser = require("body-parser");
app.set('view engine', 'ejs');
app.use(bodyParser.urlencoded({
extended: true
}));
app.use(bodyParser.json());
app.post('/search_result', function(req, res) {
res.json({"recipe name":"good recipe","recipe link":"www.goodrecipe.com"});
});
app.listen(3000);
我怀疑在/ search_result页面上必须有一些东西等待我的设置方式,我只是不知道它是什么以及接下来应该使用哪些工具... < / p>
答案 0 :(得分:0)
您需要快速提供一个页面来解析该HTML。现在你只是告诉它发回一个json对象。
res.render('recipe.html');
您可能希望查看AngularJS
等选项或使用JQuery发送请求,并在收到回复时进行前端更改。