Я прошел через подобные вопросы, но все еще не мог понять.
У меня есть форма, показанная ниже. Один из типов ввода является скрытым. Значения для обоих текстовых полей определяются моделью, передаваемой из контроллера.
<form asp-action="Edit">
//input one
<div class="form-group" id="control1">
<label asp-for="Value" class="control-label"></label>
<input asp-for="Value" class="form-control" required="required" id="param2" />
<span asp-validation-for="Value" class="text-danger"></span>
</div>
<input type="hidden" asp-for="Type" id="param1" />
</form>
Тип ввода по умолчанию - текстовое поле, но предположим, что если значение asp -for = "Тип" равно "drop", я хочу изменить ввод введите раскрывающийся список с True или False Option. Я попробовал следующее. Я добавил новую группу форм и назначил id = control2.
<div class="form-group" id="control2">
<select asp-for="Value">
<option value="True">True</option>
<option value="False">False</option>
</select>
</div>
Что я сделал, я выбрал значение param1 , используя jquery и, если оно равно " bool "тогда я скрываю control1 и показываю control2 (что неверно). Поэтому, даже если я выбрал значение с помощью раскрывающегося списка в элементе управления 2, значение текстового поля из элемента control1 (которое я скрываю) используется при возникновении процедуры POST.
Может кто-нибудь сообщить мне об этом? Либо альтернативный метод, либо продолжайте использовать мой метод, чтобы использовать значение control2
Большое спасибо заранее!