@using Mvc.CascadeDropDown
//First simple dropdown
@Html.DropDownListFor(m=>m.SelectedCountry, Model.Countries,
"Please select a Country", new {@class="form-control"})
//Dropdown list for SelectedCity property that depends on selection of SelectedCountry property
@Html.CascadingDropDownListFor(
expression: m => m.SelectedCity,
triggeredByProperty: m => m.SelectedCountry, //Parent property that trigers dropdown data loading
url: Url.Action("GetCities", "Home"), //Url of action that returns dropdown data
actionParam: "country", //Parameter name for the selected parent value that url action receives
optionLabel: "Please select a City", // Option label
disabledWhenParrentNotSelected: true, //If true, disables dropdown until parrent dropdown selected
htmlAttributes: new { @class = "form-control" }) //Html attributes
//Dropdown list for SelectedStreet property that depends on selection of SelectedCity property
@Html.CascadingDropDownListFor(m => m.SelectedStreet, m => m.SelectedCity,
Url.Action("GetStreets", "Home"), "city", "Please select a Street", true, new { @class = "form-control" })
L esempio sta sul link https://github.com/alexanderar/Mvc.CascadeDropDown
Il pacchetto scaricato è https://www.nuget.org/packages/Mvc.CascadeDropDown/
Sembra fatto molto bene,e sembra funzionare, c'è solo un particolare, non riesco a mandare il valore al controller, ad esempio l'id della regione dovrei mandarlo al controller che poi fa la query per le province.
Ho provato ha settare alla funzione un id statico e dopo aver fatto la query effettivamente riempie la lista, sempre dopo aver selezionato qualcosa sulla prima anche se in questo caso non corrisponde,però il sistema comunica tutto, c'è solo questo problema.
Quell actionParam non è molto chiaro.
Grazie per l'aiuto.