我正在使用angularjs中的if条件检查状态是否为!=传递或状态为!=取消然后提醒消息
if($scope.itemDeliveredStatus != "Canceled" || $scop.itemDeliveredStatus != "Delivered"))
{
alert("Please set item status to Delivered! or Canceled!");
return false;
}
答案 0 :(得分:0)
在第二种情况下出现错字,您将$scop
代替了$scope
:
$scop.itemDeliveredStatus
以及该行末尾的多余)
答案 1 :(得分:0)
首先,您确实有错别字,但这只是一个小问题。另一个是逻辑问题。
您使用OR的逻辑是错误的。下面的简单示例向您展示了这一点。
var foo = "A";
if (foo !== "A" || foo !== "B") {
console.log("WHY?")
}
为什么?因为您说的是,要使此if语句为true,变量foo必须等于两件事。
您要说foo不等于A并且foo不等于B会显示错误。
var foo = "A";
if (foo !== "A" && foo !== "B") {
console.log("WHY?")
} else {
console.log("Better!!!")
}
因此,在解决了两个问题之后,您的代码将如下所示:
if ($scope.itemDeliveredStatus != "Canceled" && $scope.itemDeliveredStatus != "Delivered") { /*.. code */ }