我刚开始学习node.js web框架 - express.js,我需要一些验证表单的帮助。我希望你能帮助我。
这是我的表单页面:
<!DOCTYPE html>
<html>
<head>
<title>{{ title }}</title>
<link rel='stylesheet' href='/stylesheets/style.css' />
</head>
<body>
<div>
{{ number1 }} + {{ number2 }} = <form action="/" method="POST"> <input type="number" name="result"/>
<input type="submit" name="submit" value="Result"/>
</div>
</body>
</html>
这是我路由表格的地方。
var express = require('express');
var router = express.Router();
router.get('/', function(req, res){
res.render('index', {
title: 'Test',
number1: 7,
number2: 5,
});
});
router.post('/', function(req, res){
var result=req.body.result;
res.send(result+ " is the right answer !");
});
module.exports = router;
所以它只是一个简单的验证。我有两个数字“5”和“7”我希望当用户在数字输入字段中输入5 + 7的结果时,所以当他输入12时,给他打开一条消息(“12是正确答案”)当他键入一个不同于12的数字时给他一个错误信息(“15不是正确答案”)。希望你能帮我谢谢! :)
答案 0 :(得分:0)
渲染表单时在req.body中设置两个数字。添加然后再与req.body.result进行比较
这样的东西?
router.post('/', function(req, res){
var firstNum = req.body.firstNum;
var secondNum = req.body.secondNum;
var result = req.body.result;
if(result === firstNum + secondNum) {
res.send(result+ " is the right answer !");
} else {
res.send(result + " isnt the right answer")
}
});