Maison >développement back-end >C++ >Comment puis-je accéder aux propriétés du modèle MVC en JavaScript ?

Comment puis-je accéder aux propriétés du modèle MVC en JavaScript ?

Barbara Streisand
Barbara Streisandoriginal
2025-01-10 20:33:44122parcourir

How Can I Access MVC Model Properties in JavaScript?

Accès aux propriétés du modèle MVC en JavaScript

Dans les applications MVC, les modèles encapsulent la logique et les données du domaine, mais accéder à ces propriétés à partir de JavaScript peut être difficile. Une solution consiste à convertir le modèle côté serveur en un objet JavaScript.

Par exemple, considérons la classe FloorPlanSettingsModel côté serveur suivante :

<code class="language-csharp">public class FloorPlanSettingsModel
{
    public int Id { get; set; }
    public int? MainFloorPlanId { get; set; }
    public string ImageDirectory { get; set; }
    public string ThumbnailDirectory { get; set; }
    public string IconsDirectory { get; set; }
}</code>

Pour accéder à l'une de ces propriétés depuis JavaScript, suivez cette méthode :

<code class="language-javascript">var floorplanSettings = @Html.Raw(Json.Encode(Model.FloorPlanSettings));
alert(floorplanSettings.IconsDirectory);</code>

Cependant, cela peut poser des problèmes avec des modèles complexes ou des références circulaires. Pour résoudre ce problème, pensez à transmettre uniquement des propriétés spécifiques à Json.Encode() :

<code class="language-javascript">var floorplanSettings = @Html.Raw(Json.Encode(Model.FloorPlanSettings.IconsDirectory));</code>

Cela renvoie une représentation sous forme de chaîne sérialisée de la valeur de l'attribut, accessible en JavaScript.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn