我有以下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
,但其中的代码无论如何都会运行
哪里有问题?
感谢。
答案 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。