我不确定if语句有什么问题。我正在尝试在JavaScript中使用我的模型。
if (@Model !== null)
{
if (@Model.Level !== null)
{
//use @Model.Level
}
}
else
{
//use default
}
该模型为null,但它仍会进入第一个if语句(并明显在第二个if语句上中断)。我试过@Model
,!@Model
和!=
但它仍然始终步骤英寸
我究竟做错了什么?(在两个!==
都说存在语法错误的情况下,它还带有波浪状的红色线条)
在JavaScript中,三元方程式无需类型转换即可工作。在您的情况下,您可能会得到一个未定义的对象,该对象不是null值。
例如:
undefined === null //Do not cast when comparing, increased performance.
false
undefined == null //Do cast when comparing, decreased performance.
true
另外,如果@Model值为null,则在客户端不会看到null值。它为您提供了一个空值,如下所示:
if( == null)
{
}
这将在您的JavaScript端导致错误。空检查应在服务器端进行。因此,您必须在代码前加上@ value使其成为服务器端:
<script>
@if (Model != null) //Server side code.
{
if (Model.Level != null) //still server side code.
{
<text>
alert("your javascript here"); //write javascript on your screen.
</text>
}
}
</script>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句