JavascriptからMVCのモデルプロパティにアクセスする質問する

JavascriptからMVCのモデルプロパティにアクセスする質問する

ビューモデルにラップされた次のモデルがあります

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; }
}

Javascript から上記のプロパティの 1 つにアクセスするにはどうすればよいですか?

これを試してみましたが、「undefined」と表示されました

var floorplanSettings = "@Model.FloorPlanSettings";
alert(floorplanSettings.IconsDirectory);

ベストアンサー1

次のようにすると、サーバー側モデル全体を JavaScript オブジェクトに変換できます。

var model = @Html.Raw(Json.Encode(Model));

あなたの場合、FloorPlanSettings オブジェクトだけが必要な場合は、Encodeそのプロパティをメソッドに渡すだけです。

var floorplanSettings = @Html.Raw(Json.Encode(Model.FloorPlanSettings));

おすすめ記事