下拉菜单无法保存价值

时间:2018-08-25 17:05:18

标签: 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();
    }

0 个答案:

没有答案