Asp.net mvc ASP.NET MVC Razor-当发出C#变量时,JavaScript执行中止

Asp.net mvc ASP.NET MVC Razor-当发出C#变量时,JavaScript执行中止,asp.net-mvc,razor,Asp.net Mvc,Razor,我将一个MVC3项目升级为MVC4,在我发出一些C#in Razor后,似乎没有调用一些javascript函数 <script type="text/javascript"> $(function () { var obj = @(Html.Raw(Model.InterestsJson)) ; alert('This is never called.'); }); </script> $(函数(){ var obj=@(Html.Raw(Mod

我将一个MVC3项目升级为MVC4,在我发出一些C#in Razor后,似乎没有调用一些javascript函数

<script type="text/javascript">
$(function () {
    var obj = @(Html.Raw(Model.InterestsJson)) ;

    alert('This is never called.');
}); 
</script>

$(函数(){
var obj=@(Html.Raw(Model.InterestsJson));
警惕(“这从来没有被调用过”);
}); 
当我从Model.interestsJson提取发出的字符串时,javascript函数正常运行

<script type="text/javascript">
$(function () {
    var obj = [{ "Id": 1, "Name": "Sports" }, { "Id": 2, "Name": "Entertainment" }];
    alert('This will now be called'); 
}); 
</script>

$(函数(){
var obj=[{“Id”:1,“Name”:“Sports”},{“Id”:2,“Name”:“Entertainment”}];
警报(“现在称为”);
}); 
奇怪的是,在我将项目升级到MVC4之前,这一切都是可行的

我做的第一件事是检查js错误,但没有任何异常

有什么想法吗?

@(Html.Raw(Model.InterestsJson))
语句发出无效的JS代码,因此无法解析下一个语句。打开页面源代码,检查有什么问题

这可能会解决问题

@{ Html.Raw(Model.InterestsJson); }

我只是喜欢
它不起作用
问题描述。太详尽了。它提供了很多细节。这是一种爱。请继续阅读并提出一个真正的问题,因为我可以将您展示的代码片段放在JSFIDLE中,并向您证明它是有效的。结论是,代码中还有一些您没有显示的东西导致了问题。提到一个问题,它是什么?错误消息?某物你检查FireBug控制台了吗?有什么事吗?