2011-08-29 6 views

答えて

5

私は次のように使用します。

<script type="text/javascript"> 
    var initialData = @Html.Raw(new JavaScriptSerializer().Serialize(Model)); 
</script> 

これはまさにあなたの例(Html.Rawに注意してください)と同じです。

したい場合は(HTML)エンコードされたか、あなたのコードの出力はIHtmlStringを返します。@new JavaScriptSerializer(..)を使用して後(最初のスペースでカミソリパーサを停止させますので、

<script type="text/javascript"> 
    var initialData = @(new JavaScriptSerializer().Serialize(Model)); 
</script> 

あなたは、@(...)構文を使用しますか新しい)。

このような構文:

<script type="text/javascript"> 
    var initialData = @{ new JavaScriptSerializer().Serialize(Model); }; @* <== wrong *@ 
</script> 

は、それがnew JavaScriptSerializerを呼び出すために動作しますが、出力を破棄しません。

+0

偉大な、それは動作します! – hardywang

関連する問題