2011-12-26 14 views
0

MVC3 projをMVC4にアップグレードしたところ、RazorでC#をいくつか発行した後にjavascript関数が呼び出されないように見えます。ASP.NET MVC Razor - C#変数が発行されたときにJavaScriptの実行が中止される

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

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

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> 

私は、プロジェクトをMVC4にアップグレードするまでこれがうまくいかなかったことは間違いありません。

私が最初にしたことは、jsエラーをチェックすることでしたが、何も例外がスローされませんでした。

アイデア?

+0

「それはうまくいかない」問題の説明が大好きです。それは網羅的です。それは非常に詳細を提供します。それは愛です。先に進んでhttp://sscce.orgを読んで本当の質問をしてください。あなたが示したスニペットをjsfiddleに入れ、それが動作することを証明できるからです。結論として、あなたのコードには、それが問題を引き起こしていることを示していない何か他のものがあるということです。問題に言及すると、それは何ですか?エラーメッセージ?何か?あなたはFireBugコンソールをチェックしましたか?何かあったの? –

答えて

1

@(Html.Raw(Model.InterestsJson))ステートメントが無効なJSコードを発行するため、次のステートメントを解析できません。ページのソースを開いて、何が問題なのかを確認します。

おそらく、これで問題は解決するはずです。

@{ Html.Raw(Model.InterestsJson); } 
関連する問題