Mengakses Sifat Model MVC daripada JavaScript: Panduan Praktikal
Artikel ini menangani masalah biasa untuk mengakses sifat model MVC dalam kod JavaScript. Kami akan menumpukan pada mendapatkan semula data daripada kelas FloorPlanSettingsModel
, khususnya sifat IconsDirectory
, yang sering mengembalikan "tidak ditentukan" jika tidak dikendalikan dengan betul.
Penyelesaian terletak pada menukar model sisi pelayan dengan betul kepada objek JavaScript yang boleh digunakan. Terdapat dua pendekatan utama:
Kaedah 1: Menukar Keseluruhan Model
Kaedah ini menukar keseluruhan model MVC kepada objek JavaScript, memberikan akses kepada semua sifatnya. Gunakan kod berikut dalam JavaScript anda:
<code class="language-javascript">var model = @Html.Raw(Json.Encode(Model));</code>
Baris ini menggunakan sintaks Razor (@Html.Raw dan Json.Encode) untuk mensiri model menjadi rentetan JSON dan kemudian menghuraikannya ke dalam objek JavaScript. Anda kemudiannya boleh mengakses IconsDirectory
seperti ini:
<code class="language-javascript">alert(model.FloorPlanSettings.IconsDirectory);</code>
Kaedah 2: Menukar Sifat Tertentu
Untuk kecekapan yang dipertingkatkan, jika anda hanya memerlukan harta FloorPlanSettings
, tukar terus bahagian model itu sahaja:
<code class="language-javascript">var floorplanSettings = @Html.Raw(Json.Encode(Model.FloorPlanSettings));</code>
Pendekatan ini lebih fokus dan mengelakkan pemindahan data yang tidak perlu. Mengakses IconsDirectory
kemudiannya mudah:
<code class="language-javascript">alert(floorplanSettings.IconsDirectory);</code>
Kedua-dua kaedah menggunakan Json.Encode
untuk memastikan siri JSON yang betul, membolehkan penyepaduan lancar dengan JavaScript. Dengan menggunakan salah satu daripada teknik ini, pembangun boleh mengakses dan memanipulasi sifat model MVC dengan berkesan dalam kod JavaScript mereka, yang membawa kepada antara muka pengguna yang lebih dinamik dan responsif.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengakses Sifat Model MVC (cth., IconsDirectory) daripada JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!