У меня есть 2 таблицы tblcustomer и tblphone в моей базе данных. У меня есть два свойства (бренд и модель) в tblphone. Я использую MVC5 для создания нового клиента. У меня есть 2 Dropdownlist в моем представлении, и я хочу изменить значения Dropdown2 (Models) при изменении Dropdown1 (Brand).
Я реализовал этот код, но при нажатии кнопки «Отправить» dropdown2 не возвращает поле Phone_Fk, которое отправляется методом JSON.
пожалуйста, проверьте код и исправьте ошибку
Я думаю, что сделал ошибку в выпадающем или скриптовом запросе.
My View
@Html.Label("Brand", htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.DropDownListFor(model => model.Com, new SelectList(ViewBag.Brand),"--Select Brand--")
@Html.ValidationMessageFor(model => model.Com,"", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.Phone_Fk, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.DropDownListFor(model => model.Phone_Fk, new SelectList(" "), "--Select Model--")
@Html.ValidationMessageFor(model => model.Phone_Fk, "", new { @class = "text-danger" })
</div>
</div>
Сценарий
<script src="~/scripts/jquery-1.10.2.js"></script>
<script >
$(document).ready(function () {
$("#Com").change(function () {
$.get("/Customer/getmodelList", { Com: $("#Com").val() }, function (data) {
$("#Phone_Fk").empty();
$.each(data, function (index, row) {
$("#Phone_Fk").append("<option value='" + row.Phone_Fk + "'>" + row.model_name + '</option>')
});
});
})
});
</script>
Контроллер
public JsonResult getmodelList(string Com)
{
db.Configuration.ProxyCreationEnabled = false;
var list = db.Phonedetails.Where(x => x.Com_nam == Com).Select(x => new { x.Phoneid, x.model_name }).ToList();
return Json(list, JsonRequestBehavior.AllowGet);
}
// POST: Customer/Create
[HttpPost]
public ActionResult Create(myappCustomer p)
{
try
{
if (ModelState.IsValid)
{
d.createcus(p);
return RedirectToAction("Index");
}
я хочу идентификатор модели, которая выбрана в dropdown2, но идентификатор идет 0.