如何检查ViewBag属性是否为null或不存在

66

如果viewbag属性为空或不存在,我需要在document.ready函数中执行一个脚本。以下是我编写的代码,用于检查viewbag属性是否不存在。

我使用了推荐的方法,其中你可以使用@ViewBag.Property!=null,但是当我这样做时,我会收到一个错误,说当前上下文中不存在该属性名。

@section scripts {

@if ((bool)ViewData.ContainsKey("FormSubmitFlag") == false)
{
    <script type="text/javascript">
        $(document).ready(function () {

            var pageVisitCount = sessionStorage.getItem("personalDetailsVisitCount");
            if (pageVisitCount == null) {
                $("#personal-details-form").trigger('reset');
                sessionStorage.setItem("personalDetailsVisitCount", "1");
            }
            else {
                var validator = $("#personal-details-form").validate();
                validator.form();
                cat.personaldetails.validate();
            }
        });
    </script>
}

}

谢谢你


1
检查一下这行代码@if ((bool)ViewData.ContainsKey("FormSubmitFlag") == false)在HTML中的输出是什么。这样你就能更好地了解出了什么问题。 - Jenish Rabadiya
使用 @ViewBag.Property!=null 应该没问题。你是怎么使用它的? - user3559349
请查看此链接:http://www.codingfusion.com/Post/Check-if-ViewBag-property-is-null-or-not-exists-in-Net-MVC - MaxPayne
1个回答

133
您可以检查 null 并执行您的脚本。
@if (ViewBag.YourKey== null)
{
 //your code   
}

如果您想检查ViewBag.YourKey是否为空,可以使用此代码进行检查。如果要检查它是否不为空,则可以更改if条件。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接