在JavaScript中存取MVC模型屬性
在MVC應用程式中,模型封裝了領域邏輯和數據,但從JavaScript存取這些屬性可能很困難。一種方法是將伺服器端的模型轉換為JavaScript物件。
例如,考慮以下伺服器端的FloorPlanSettingsModel類別:
<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>
要從JavaScript存取這些屬性中的一個,請依照下列方法操作:
<code class="language-javascript">var floorplanSettings = @Html.Raw(Json.Encode(Model.FloorPlanSettings)); alert(floorplanSettings.IconsDirectory);</code>
但是,這可能會導致複雜模型或循環引用出現問題。為了解決這個問題,考慮只將特定屬性傳遞給Json.Encode():
<code class="language-javascript">var floorplanSettings = @Html.Raw(Json.Encode(Model.FloorPlanSettings.IconsDirectory));</code>
這將傳回屬性值的序列化字串表示形式,可以在JavaScript中存取。
以上是如何在 JavaScript 中存取 MVC 模型屬性?的詳細內容。更多資訊請關注PHP中文網其他相關文章!