2011-08-29 20 views

Respuesta

5

me gustaría utilizar el siguiente:

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

Este es exactamente el mismo que el ejemplo (nótese el Html.Raw).

Si desea que la salida (html) codificada o su código devuelve un IHtmlString:

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

Usted desea utilizar @(...) sintaxis, porque el uso de @new JavaScriptSerializer(..) se deje la parada de afeitar analizador en el primer espacio (después de nuevo).

La sintaxis de esta manera:

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

no funciona porque va a llamar new JavaScriptSerializer, pero descarta la salida.

+0

¡Genial, funciona! – hardywang

Cuestiones relacionadas