我有一个没有值(value)的 ViewBag。我什至没有定义 ViewBag.SelectVale 在我的 Controller 中,所以我希望它是一个空值。
当我在 JQuery 中执行以下操作但不起作用时:
if ('@ViewBag.SelectVale' == null){
// do something
}
有效的是这样的:
if ('@ViewBag.SelectVale' == ""){
// do something
}
请您参考如下方法:
在 .NET 框架中,null
将输出作为空字符串,因此如果您查看发送到浏览器的实际 javascript,在第一种情况下它会说:
if ('' == null)
...在第二种情况下它会说:
if ('' == "")
大多数 javascript 程序员会告诉您只需将语句更改为:
if ('@ViewBag.SelectVale')
... 因为当空字符串在 javascript 中被视为 bool 值时,它们的计算结果为 false
。
或者,因为这里似乎没有发生任何真正动态的事情,试试这个:
@if(ViewBag.SelectVale == null) {
<text>
// do something in javascript.
</text>
}
... 这甚至会避免输出“做某事”javascript,因为您知道在呈现页面时 SelectVale 为空。