【发布时间】:2019-05-30 17:21:37
【问题描述】:
我在 JavaScript 中有一个 if-else 语句,它返回 false,但不执行 'else' 中的代码。
cshtml文件中的部分脚本:
if (@Session["mission"].ToString() != "1") {
setInterval(function () { myTimer(ctxPoints, ctxLines); }, 1000 / @ViewBag.rate);
} else {
alert("hi");
}
在调试中,'@Session["mission"].ToString() != "1"' 语句返回 false,但没有任何内容跳转到屏幕。
【问题讨论】:
-
什么是
@Session["mission"].ToString()?你的意思是toString? -
请显示
@Session["mission"].ToString()的结果。 -
看起来像 Razor C# 语法,所以它是 C# .ToString() 大写,但你应该检查
@Session["mission"].ToString()的值以确保它是你所期望的 -
您可能需要在
if else语句之前对@Session["mission"]进行空值检查,以确保它不为空 -
它不为空.. '@Session["mission"].ToString()' 返回 "2" (字符串类型)和 '@Session["mission"].ToString() == "1"' 返回 false(bool 类型)
标签: javascript c# asp.net-mvc