Dapatkan SelectedValue senarai lungsur turun dalam pengawal MVC
Dalam aplikasi MVC, memberikan nilai kepada senarai lungsur turun daripada pangkalan data adalah senario yang sangat biasa. Walau bagaimanapun, apabila anda menyerahkan borang, anda perlu mengakses nilai yang dipilih dalam pengawal. Artikel ini menyediakan dua kaedah untuk mencapai ini:
Kaedah 1: Gunakan Request atau FormCollection
Kaedah pertama membaca nilai yang dipilih terus daripada permintaan. Menggunakan Request.Form anda boleh menentukan kunci dropdown (ddlVendor dalam kes ini) untuk mendapatkan semula nilai yang disiarkan:
<code class="language-csharp">string strDDLValue = Request.Form["ddlVendor"].ToString();</code>
Sebagai alternatif, anda boleh menggunakan FormCollection:
<code class="language-csharp">[HttpPost] public ActionResult ShowAllMobileDetails(MobileViewModel MV, FormCollection form) { string strDDLValue = form["ddlVendor"].ToString(); return View(MV); }</code>
Kaedah 2: Gunakan model
Untuk kaedah pengikatan model, tambahkan sifat pada model anda:
<code class="language-csharp">public class MobileViewModel { public List<tbinsertmobile> MobileList; public SelectList Vendor { get; set; } public string SelectedVendor {get;set;} }</code>
Pada pandangan anda, ikat senarai lungsur ke model menggunakan @Html.DropDownListFor dan nyatakan sifat SelectedVendor:
<code class="language-csharp">@Html.DropDownListFor(m=>m.SelectedVendor , Model.Vendor, "Select Manufacurer")</code>
Akhir sekali, dalam pengawal anda, nilai yang dipilih boleh diakses melalui sifat SelectedVendor:
<code class="language-csharp">[HttpPost] public ActionResult ShowAllMobileDetails(MobileViewModel MV) { string SelectedValue = MV.SelectedVendor; return View(MV); }</code>
Kemas kini: Siarkan teks yang dipilih
Untuk menangkap kedua-dua nilai yang dipilih dan teks yang sepadan, tambah medan tersembunyi pada paparan anda:
<code class="language-csharp">public class MobileViewModel { public List<tbinsertmobile> MobileList; public SelectList Vendor { get; set; } public string SelectVendor {get;set;} public string SelectedvendorText { get; set; } }</code>
Pada pandangan anda, gunakan JavaScript untuk mengemas kini teks item yang dipilih dalam medan tersembunyi:
<code class="language-javascript">$(function(){ $("#SelectedVendor").on("change", function() { $("#SelectedvendorText").val($(this).text()); }); }); @Html.DropDownListFor(m=>m.SelectedVendor , Model.Vendor, "Select Manufacurer") @Html.HiddenFor(m=>m.SelectedvendorText)</code>
Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Nilai Terpilih daripada DropDownList dalam Pengawal MVC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!