Присвойте значение из выпадающего списка переменной на страницах Razor в представлении - PullRequest
0 голосов
/ 21 февраля 2020

Можно ли получить значение из раскрывающегося поля и сохранить его как переменную в том же представлении?

У меня есть этот раскрывающийся список

   <label for="vehicleMake">Choose your car's make:</label>

   <select id="vehicleMake" name="VehicleMake">
       @foreach (var item in Model.Cars)
       {
           if (@item.Category == 1072)
           {
               <option value="@item.UniqueId">@item.Description</option>

           }
       }
   </select>

, и я хотел бы получить значение из выбора для сохранения в качестве переменной для использования в следующем раскрывающемся меню примерно так:

@{ var selectedVehicleMake = @*????? get the value from the previous dropdown ?????*@
}

    <label for="vehicleModel">Choose your car's model:</label> 
    <select id="vehicleModel" name="VehicleModel">
        @foreach (var item in Model.Cars)
        {
            if (@item.Category == 1073 && @item.VehicleMakeId == selectedVehicleMake)
            {
                <option value="@item.UniqueId">@item.Description</option>

            }
        }
     </select>

Или есть другой способ go по этому поводу?

1 Ответ

0 голосов
/ 21 февраля 2020

Код Razor компилируется на сервере, поэтому все переменные устанавливаются до его доставки в браузер. Код Razor не знает, какое значение будет выбрано в первом раскрывающемся списке для заполнения второго.

Что вам нужно сделать, это использовать событие Javascript onchange для выполнения AJAX вызовите и получите необходимые данные на основе первого раскрывающегося списка, чтобы заполнить второй раскрывающийся список.

...