Выбор в раскрывающемся списке на основе выбора другого раскрывающегося списка в MVC - PullRequest
0 голосов
/ 06 марта 2020

Я создаю диспетчер доступа пользователей в MVC. Я пытаюсь сделать выбор в dropdown (адрес электронной почты), и когда этот выбор сделан, запустите SQL query и на основе значения, извлеченного из sql, сделайте выбор во втором раскрывающемся меню, после второго раскрывающийся список уже заполнен элементами списка.

Код, который у меня есть в настоящее время - я надеюсь на какое-то направление, так как я не уверен, как это объединить. Можно ли взять код в моем контроллере и установить его как функцию в виде бритвы, чтобы он запускал этот код при нажатии кнопки?

Просмотр

@using (Html.BeginForm("CheckUser", "AccountController", FormMethod.Get))
{
    <div class="mycontainer2" style="position:absolute; top:20%; left:40%; background-color:#757575;">
        <h4>Select A User</h4>
        @Html.DropDownList("UserEmails", (IEnumerable<SelectListItem>)ViewData["UserEmails"], "None Selected", new { @id = "UserEmails", @class = "btn  btn-sm", @onchange = "this.form.submit();" })
        @Html.HiddenFor(m => m.SelectedClientText)


    </div>
    <div class="mycontainer2" style="position:absolute; top:30%; left:40%; background-color:#757575;">
        <h4>Select Clients</h4>

        @Html.ListBox("MYClients", (IEnumerable<SelectListItem>)ViewData["MYClients"], new { @id = "MYClients", @class = "btn btn-secondary btn-sm", @multiple = "multiple" })
        <br />
        <button type="button" class="btn btn-danger">Update</button>



    </div>
}

Script

<script>
    $("#UserEmails").on("change", function () {
        $("form").submit();
    });
</script>

Контроллер

  [HttpPost]
        public  Task<ActionResult> CheckUser(FormCollection Form)
        {
            managerEntities db1 = new managerEntities();
            string UserEmail = Form["UserEmails"].ToString();
            var ClientAccess = db1.users.SqlQuery("My query where Email = @email ", new SqlParameter("@email", UserEmail)).ToString();
            string[] SelectedClients = ClientAccess.Split('|');



            return View();
        }

1 Ответ

0 голосов
/ 08 марта 2020

То, что вы пытаетесь достичь, это выпадающие списки Dependent / Cascading. Взгляните на это: Зависимый выпадающий список в ASP. NET MVC

Это почти точно отвечает на ваш вопрос. По крайней мере, это должно вести вас в правильном направлении.

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