繁体   English   中英

如何使用express.js验证表单?

[英]How to validate a form with express.js?

我刚刚开始学习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不是正确答案”)。 希望您能帮我谢谢! :)

呈现表单时,在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")
    }
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM