javascript - 将 MVC 模型属性存储到 JavaScript var 对象语法错误

标签 javascript c# asp.net-mvc asp.net-mvc-4 razor

由于某种原因,我在尝试使用 Razor 语法将模型对象存储到 JavaScript 变量中时遇到语法错误。经过谷歌研究后,我似乎应该能够做这样的事情。我在 cshtml 中使用脚本标记来执行此操作(我知道这是不好的做法,但我在这个项目中较晚加入,所以我这样做是为了统一),所以这里是代码。

索引.cshtml:

<script>
    var isAvailable = @Model.IsAvailable; // This gives me a syntax error
</script>

我有一个带有名为 IsAvailable 的 bool 属性的 Model 类,我尝试将其存储在 var isAvailable 中,但 Visual Studio 不喜欢它。知道为什么吗?

最佳答案

默认情况下,MVC 调用 ToString(),将 bool 值转换为字符串会生成大写值(即 True),而 JS bool 语法需要小写值(即 true)。试试这个:

var isAvailable = @(Model.IsAvailable.ToString().ToLower());

关于javascript - 将 MVC 模型属性存储到 JavaScript var 对象语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38439111/

相关文章:

javascript - react : Search Filter is not working Properly

c# - ServiceStack - FluentValidation

c# - 是否可以让派生类继承非 0 参数构造函数?

c# - WPF 4 键盘焦点 : never recieving key events

asp.net-mvc - GenericPrincipal 角色在 MVC View 中不可用

c# - 如何使用 jscript 中声明的参数调用 Html.RenderAction()?

javascript - 努力让 DayJs 可用于 cypress 中的所有测试

javascript - jquery 在点击处理程序中使用触发器 ('click' )

javascript - 如何使用userAgent识别android和linux用户

javascript - Html5/Javascript对接/流程部分布局