Каскадное выпадающее меню asp.net core mvc - PullRequest
0 голосов
/ 07 мая 2019

Я пытаюсь каскадное раскрывающееся меню, используя JQuery.Я создал две модели: одна модель автомобиля, а вторая марка.После этого я создаю третью модель для гарантии, которая содержит ModelID и BrandID

  [Display(Name = "Marka vozila")]
   public int MarkaVozilaID { get; set; }

    [ForeignKey("MarkaVozilaID")]
    public virtual MarkeVozila MarkaVozila { get; set; }

    [Display(Name = "Model vozila")]
    public int ModelVozilaID { get; set; }

    [ForeignKey("ModelVozilaID")]
    public virtual ModeliVozila ModelVozila { get; set; }

Поэтому, когда я создаю Гарантию и когда пользователь хочет выбрать марку автомобиля, он должен отображать все модели.Внутри моего контроллера я добавляю функцию

   [HttpGet]
        public JsonResult GetMarkaById(int MarkaId)
        {
            var markaList = new SelectList(_db.MarkeVozila.Where(c => c.Id == MarkaId), "Id", "Ime");
            return Json(markaList);

        }

И добавляю скрипт для каскадирования

<script type="text/javascript">
        $(document).ready(function () {
        var items = "<option value='0'>Select</option>";
        $("#markaVozila").html(items);
    });


    $("#modelVozila").change(function () {
        var modelID = $("#modelVozila").val();
        var url = "/Garancija/GetMarkaById";

        $.getJSON(url, { modelID: modelID }, function (data) {
            var item = "";
            $("#markaVozila").empty();
            $.each(data, function (i, marka) {
                item += '<option value="' + marka.value + '">' + marka.text + '</option>'
            });
            $("#markaVozila").html(item);
        });
    });
</script>


<div class="form-group row">
            <div class="col-3">
                <text>Marka Vozila</text>
            </div>
            <div class="col-5">
                <select asp-for="@Model.Garancija.MarkaVozilaID" id="markaVozila"  asp-items="Model.MarkeVozila.ToSelectListItem(Model.Garancija.MarkaVozilaID)" class="form-control"></select>
            </div>
        </div>

        <div class="form-group row">
            <div class="col-3">
                <text>Model Vozila</text>
            </div>
            <div class="col-5">
                <select asp-for="@Model.Garancija.ModelVozilaID" id="modelVozila"  asp-items="Model.ModeliVozila.ToSelectListItem(Model.Garancija.ModelVozilaID)" class="form-control"></select>
            </div>
        </div>

Но когда я запускаю его, он ничего не отображает. Где я допустил ошибку, может кто-нибудь мне помочь?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...