Как удалить атрибуты и «вычеркнуть» текстовое поле на основе значения раскрывающегося списка при изменении выбора страницы и выпадающего списка? Я пробовал следующие советы here и here, но он только кажется, что работает над выпадающим списком. В Visual Studio или на консоли Chrome ошибки не отображаются.Удалить атрибуты при загрузке страницы и вкл.
View имеет выпадающий список, который загружается с сохраненным выбором пользователя, и текстовое поле становится недоступным только после изменения выбора выпадающего списка и изменения обратно, когда исходное значение выпадающего значения также должно первоначально загружать текстовое поле как недоступное , Другими словами, текстовое поле должно быть недоступен в каждой точке, где выпадающий значение == 1, но следующее, кажется, не делают это:
<div class="col-md-12" style="clear: left;">
<label for="preferenceId" class="req">Preference</label>
<div class="col-xs-8 no-left">
@Html.DropDownListFor(m => m.PreferenceTypeID, StaticCache.GetPreferenceTypes(), new { @class = "form-control", data_parsley_required = "true" })
</div>
<div class="col-xs-4 no-right">
<div id="customAmount">
@Html.TextBoxFor(m => m.PreferenceCustomAmount, new { @class = "form-control" })
</div>
</div>
</div>
@section Scripts{
<script>
$(function() {
if ($("#PreferenceTypeID").val() != 1) {
$("#PreferenceCustomAmount").hide();
} else {
$("#PreferenceCustomAmount").show();
}
});
$("#PreferenceTypeID").change(function() {
if ($("#PreferenceTypeID").val() == 1) {
$("#PreferenceCustomAmount").attr("disabled", "disabled");
} else {
$("#PreferenceCustomAmount").removeAttr("disabled", "disabled");
}
});
</script>
}
Попробуйте для удаления атрибута '$ ("# PreferenceCustomAmount") removeAttr ("отключено");.' –
Наверное, не самое лучшее решение, но после добавления слушателя для события изменения вызывают событие «change» для элемента –
, почему вы хотите удалить атрибут, если текстовое поле уже скрыто при загрузке страницы? – Sushil