我在this link中找到了将一些数据从我的模型传输到javascript对象的解决方案。问题是我在visual studio中有一个错误,表明分号是无效的,但是当我尝试运行我的应用程序时,它运行得很好。
以下是显示错误的屏幕截图:
但如果我删除分号,我现在有这个错误:
无论如何,javascript语句应该总是在行尾有一个分号。
如果我运行我的应用程序时,这个错误意味着什么呢?
答案 0 :(得分:3)
您可以尝试将其封闭在一个块中:
var serializedData = @{
Html.Raw(NewtonSoft.Json.JsonConvert.SerializeObject(Model));
};
编辑:此答案仅适用于VS 2010. VS 2012中的升级也会破坏此解决方法。
答案 1 :(得分:2)
我刚刚开始使用Razor / MVC 4,但你可以这样做吗?
@{
var serializedData = Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(Model));
}
<script>
...
var serializedData = @serializedData;
答案 2 :(得分:1)
将你的剃刀代码用引号括起来:
var myVar = '@serializedData';
作为JavaScript duck类型,在大多数用例中你应该没问题。