我有一个锚链接,点击它我调用一个JavaScript函数,我在其中使用if-else。如果条件为真,它可以正常工作到链接。但如果条件为假。我正在向用户显示警告。但我的警报不起作用。
<script type="text/javascript" language="javascript">
function getVal(fid) {
if (fid != null || fid != undefined || fid != "")
window.location = "http://yatra.eresolute.com/Airline/AirPrice.aspx?fid=" + fid.toString();
else
alert("Flight has no ID!");
}
</script>
答案 0 :(得分:1)
你误导了
if (fid != null || fid != undefined || fid != "")
您应该使用&&
代替||
。
为什么?
因为||
表示或和fid
,所以在每种情况下,不能同时为null和undefined以及空字符串。在您的代码中,您说的是
如果它不为空或未定义或空字符串,则重定向
对于这3个验证,您的检查必须是肯定的。 所以,2个选择:
if (fid != null && fid != undefined && fid != "") {window.location...}else{alert(...)}
或者
if (fid == null || fid == undefined || fid == "") {alert(...)}else{window.location...}
答案 1 :(得分:0)
这是你的解决方案
function getVal(fid) {
if (fid != null && fid != undefined && fid != "") alert('Flight have ID')
else alert("Flight has no ID!");
}
答案 2 :(得分:0)
您应该将条件undefined
更改为
if (fid != null && typeof(fid) != 'undefined' && fid != "")
在alert(fid)
条件之前尝试if
。