将req.body与字符串进行比较

时间:2019-07-17 19:49:06

标签: javascript node.js body-parser

我正在尝试将req.body与字符串进行比较,但是它不起作用。我尝试使用JSON.stringify(req.body),但无法正常工作。 console.log(states)给出 “明尼苏达州” 。无论输入是不是明尼苏达州,if statement总是返回错误消息,即它始终为true。发布整个代码将太长,这就是为什么我选择我认为很重要的代码的原因。对困惑感到抱歉。如果您需要我提供更多信息,请让我。谢谢你的协助。

index.js

var states = JSON.stringify(req.body.state_name);
if (states !== "Minnesota" || states !== "MINNESOTA") {
  res.render("insertme", {
    msg: "Error: Please Select Only Minnesota in State Field!"
  });
}

ejs

<div class="autocomplete" style="width:300px;"> State Name
   <input id="state" type="text" name="state_name" placeholder="Please Only Select Minnesota">
</div>

1 个答案:

答案 0 :(得分:0)

对于明尼苏达州,如果测试失败,则将失败,因为您有一个OR运算符正在检查!= MINNESOTA。您的if应该是

if (states !== "Minnesota" && states !== "MINNESOTA") {  // use AND operator

或更好:

if (states.toUpperCase() !== "MINNESOTA") {