Ранее я задавал вопрос о сохранении значений, так как мой код удалял последнее значение в массиве, а затем я понял часть, где он удалял значение, поэтому я изменил синтаксис. Проблема заключается в том, что когда я отправляю форму, она берет только значение из второго раскрывающегося списка, а значение из первого раскрывающегося списка возвращает нулевое значение. Первоначальное значение из первого раскрывающегося списка объединяется с разделителем, подобным этому, vehicleID_driverID
например 14_2
.
Вот мой новый код:
$(document).ready(function () {
$('#VehicleID').change(function () {
var v = $(this).val();
//if (v == "0") {
// return;
//}
var val = v.split("_");
var drvid = val[1];
var vehid = val[0];
if (drvid == "0") {
$("#DriverID > option").each(function () {
$(this).show();
});
}
else {
$("#DriverID > option").each(function () {
var option_val = $(this).val();
if (option_val != drvid) {
$(this).hide();
}
});
}
$("#DriverID").val(drvid);
$("#VehicleID").val(vehid);
}).trigger("change");
})
контроллер:
public ActionResult ReserveInitial()
{
ViewBag.VehicleID = db.Vehicles.Where(item => item.IsReserved == false).Select(a => new SelectListItem
{
Value = a.VehicleID.ToString() + "_" + a.DriverID.ToString(),
Text = a.VehicleMake + " - " + a.PlateNumber,
});
ViewBag.DriverID = db.Drivers.Select(a => new SelectListItem
{
Value = a.DriverID.ToString(),
Text = a.DriverLastName + ", " + a.DriverFirstName
});
return View();
}
javascript,jquery,asp.net-mvc,
Ранее я задавал вопрос о сохранении значений, так как мой код удалял последнее значение в массиве, а затем я понял часть, где он удалял значение, поэтому я изменил синтаксис. Проблема заключается в том, что когда я отправляю форму, она берет только значение из второго раскрывающегося списка, а значение из первого раскрывающегося списка возвращает нулевое значение. Первоначальное значение из первого раскрывающегося списка объединяется с разделителем, подобным этому, vehicleID_driverID
например 14_2
.
Вот мой новый код:
$(document).ready(function () {
$('#VehicleID').change(function () {
var v = $(this).val();
//if (v == "0") {
// return;
//}
var val = v.split("_");
var drvid = val[1];
var vehid = val[0];
if (drvid == "0") {
$("#DriverID > option").each(function () {
$(this).show();
});
}
else {
$("#DriverID > option").each(function () {
var option_val = $(this).val();
if (option_val != drvid) {
$(this).hide();
}
});
}
$("#DriverID").val(drvid);
$("#VehicleID").val(vehid);
}).trigger("change");
})
контроллер:
public ActionResult ReserveInitial()
{
ViewBag.VehicleID = db.Vehicles.Where(item => item.IsReserved == false).Select(a => new SelectListItem
{
Value = a.VehicleID.ToString() + "_" + a.DriverID.ToString(),
Text = a.VehicleMake + " - " + a.PlateNumber,
});
ViewBag.DriverID = db.Drivers.Select(a => new SelectListItem
{
Value = a.DriverID.ToString(),
Text = a.DriverLastName + ", " + a.DriverFirstName
});
return View();
}
00JavaScript, JQuery, asp.net-MVC,