javascript代码中的模型属性

时间:2012-05-09 09:24:59

标签: javascript asp.net-mvc

我有以下javascript代码:

$(window).bind("scheduleComplete", (function (event, params) {

    var hallCount = "@Model.EventSchedules.Actual().Hall.Levels.Count";
    var level; 
    //other code

}));

我想仅在if语句为true时才绑定:

if("@Model.EventSchedules.Count" !== "0")
{
 $(window).bind("scheduleComplete", (function (event, params) {

        var hallCount = "@Model.EventSchedules.Actual().Hall.Levels.Count";
        var level; 
        //other code

    }));
}

Model.EventSchedules.Count等于0,但其中的代码无论如何都会运行 哪里有问题?

感谢。

2 个答案:

答案 0 :(得分:1)

我建议你采用另一种方法:

<script type="text/javascript">
    var count = @Html.Raw(Json.Encode(Model.EventSchedules.Actual().Hall.Levels.Count));
    if(count > 0) {
        $(window).bind("scheduleComplete", (function (event, params) {
            //other code
        }));
    }
</script>

将呈现为:

<script type="text/javascript">
    var count = 5;
    if(count > 0) {
        $(window).bind("scheduleComplete", (function (event, params) {
            //other code
        }));
    }
</script>

答案 1 :(得分:0)

您使用的是!==运算符,需要完全匹配。如果你使用!=它将使用类型强制,这可能会使它工作。如果是,您知道存在打字问题。也许在没有引号的情况下尝试并从那里开始工作。

您也可以在服务器端进行检查,只在需要时输出JS。