3

我在此链接中找到了将一些数据从我的模型传输到 javascript 对象的解决方案。问题是我在 Visual Studio 中有一个错误,表明分号无效,但是当我尝试运行我的应用程序时,它运行良好。

这是显示错误的屏幕截图:

在此处输入图像描述

但是如果我删除分号,我现在有这个错误:

在此处输入图像描述

无论如何,javascript 语句应该始终在行尾有一个分号。

如果当我运行我的应用程序时,一切正常,这个错误意味着什么?

4

3 回答 3

3

您可以尝试将其封闭在一个块中:

var serializedData = @{ 
    Html.Raw(NewtonSoft.Json.JsonConvert.SerializeObject(Model));
};

编辑:此答案仅适用于 VS 2010。V​​S 2012 中的升级也打破了此解决方法。

于 2012-11-12T17:29:25.617 回答
2

我刚从 Razor/MVC4 开始,但你可以这样吗?

@{
    var serializedData = Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(Model));
}
<script>
    ...
    var serializedData = @serializedData;
于 2012-11-12T17:31:00.500 回答
1

将您的剃须刀代码用引号括起来,如下所示:

var myVar = '@serializedData';

作为 JavaScript 鸭子类型,您在大多数用例中应该没问题。

于 2014-06-02T14:58:10.060 回答