Обработка Razor Dropdowns для значений автоматической загрузки - PullRequest
0 голосов
/ 28 января 2019

У меня есть два выпадающих списка, но один зависит от выбранного значения от другого.Но как я могу загрузить значения во второй раскрывающийся список после выбора значения из другого?Второе раскрывающееся меню должно загружать значения на основе идентификатора, выбранного из другого раскрывающегося списка.

<div class="form-group">
 <label asp-for="BankId" class="control-label col-xs-2"></label>
 <div class="col-xs-4">
  <select class="form-control" asp-for="BankId" asp-items=@bank>
   <option>--- select bank ---</option></select>
   </div>
   </div>

 <div class="form-group">
<label asp-for="BankBranchId" class="control-label col-xs-2"></label>
<div class="col-xs-4">
<select class="form-control" asp-for="BankBranchId" asp-items=@bankbranches>
<option>--- select bank branch ---</option></select>
</div>
</div>

BankBranch должен заполнять значения на основе банка, выбранного из числа

1 Ответ

0 голосов
/ 28 января 2019

Ниже приведен пример для банка и филиалов.Вы можете попробовать что-то

      <!DOCTYPE html>

        <html>
        <head>
            <meta name="viewport" content="width=device-width"/>
            <title>Index</title>
        </head>
        <body>
            @using (Html.BeginForm("Index", "Home", FormMethod.Post))
            {
                @Html.DropDownListFor(m => m.bank, Model.bank, "Please select", new { onchange = "document.forms[0].submit();" })
                <br/>
                <br/>

                @Html.DropDownListFor(m => m.branches, Model.branches, "Please select", new { disabled = "disabled" })
                <br/>
                <br/>
                <input type="submit" value="Submit"/>
            }
            <script src="~/Scripts/jquery-1.10.2.min.js"></script>
            <script type="text/javascript">
                $(function () {
                    if ($("#bank option").length > 1) {
                        $("#bank").removeAttr("disabled");
                    }

                    if ($("#branches option").length > 1) {
                        $("#branches").removeAttr("disabled");
                    }

                    if ($("#bank").val() != "" && $("#branches").val() != "") {
                        var message = "Bank: " + $("#CountryId option:selected").text();
                        message += "\nbranck: " + $("#StateId option:selected").text();
                        alert(message);
                    }
                });
            </script>
        </body>
        </html>


public class HomeController : Controller
{
    // GET: Home
    public ActionResult Index()
    {
       // populate bank values
        foreach (var bankent in entities.bank)
        {
            model.bank.Add(new SelectListItem { Text = bankent.bank, Value = bankent.id.ToString() });
        }
        return View(model);
    }


        [HttpPost]
        public ActionResult Index(int? bank)
        {

          // populate bank values
            foreach (var bankent in entities.bank)
            {
                model.bank.Add(new SelectListItem { Text = bankent.bank, Value = bankent.id.ToString() });
            }

            if (bank.HasValue)
            {
                //populate branches based on bank id
                foreach (var state in branches)
                {
                    model.branches.Add(new SelectListItem { Text = state.branches, Value = state.StateId.ToString() });
                }

            }

            return View(model);
        }
    }

для более подробной проверки Заполнить один DropDownList на основе другого выбранного значения DropDownList в ASP.Net MVC

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