Member 10928805 Ответов: 1

Включить элементы формы после выбора раскрывающегося списка с возможностью поиска


I am trying to enable form elements when selecting the first drop down with id LId3, I took the code from a button. The problem starts when I enable the searchable dropdown, when i open the searchable dropdown the form elements are not enabled. When the dropdown is clickable the form elements get enabled. Please assist with the below:
 
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>

<form asp-controller="Leaves" asp-action="Create" method="post" class="form-horizontal" role="form">
<div asp-validation-summary="ModelOnly"></div>
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>

<div class="form-group" style="display: flex">

<script type="text/javascript">$(document).ready(function () {
$("#GFG :input").prop("disabled", true);
});

function enable_disable() {
$("#GFG :input").prop("disabled", false);
}</script>

<input class="form-control col-sm-2" data-toggle="tooltip" data-placement="left" title="Employee Identiy Number" readonly />

<div class="col-sm-3">
<select onclick="enable_disable()"
class="form-control" value="Enable"
id="LId3">
</select>
</div>
</div>

</form>
<form asp-controller="Leaves" asp-action="Create" method="post" class="form-horizontal" role="form" id="GFG">
<div asp-validation-summary="ModelOnly"></div>
<div class="form-group" style="display: flex">

<input class="form-control col-sm-2" value="Name" data-toggle="tooltip" data-placement="left" title="Name of employee" readonly />

<div class="col-sm-3">
<select asp-for="LId" id="LId1"
class="form-control"
asp-items="@(new SelectList(ViewBag.ListOfTable,"LId", "EmpName"))">
</select>
</div>
</div>


<div class="form-group" style="display: flex">

<input class="form-control col-sm-2" disabled value="Surname" data-toggle="tooltip" data-placement="left" title="Surname of employee" readonly />

<div class="col-sm-3">

<select asp-for="LId" id="LId2"
class="form-control"
asp-items="@(new SelectList(@ViewBag.ListOfTable,"LId", "EmpSurname"))">
</select>
</div>
</div>

<div class="form-group" style="display: flex">

<input class="form-control col-sm-2" value="Type of Leave" readonly />

<div class="col-sm-3">
<select asp-for="TypeOfLeave" name="offer" id="leave" class="form-control">
<option value="0">Select</option>
<option value="Sick">Sick</option>
<option value="Family Responsibility">Family Responsibility</option>
<option value="Study">Study</option>
<option value="Vacation">Vacation</option>
<option value="Bereavement">Bereavement</option>
<option value="TimeOffWithoutPay">Time Off Without Pay</option>
<option value="Military">Military</option>
<option value="JuryDuty">Jury Duty</option>
<option value="Maternity/Paternity">Maternity/Paternity</option>
<option value="Other">Other</option>

</select>
<span asp-validation-for="TypeOfLeave" class="text-danger"></span>
</div>
</div>

 </form>


Что я уже пробовал:

Я только попробовал удалить выпадающий список с возможностью поиска и использовать обычный выпадающий список.

tninis

вы хотите, чтобы элементы были включены, когда вы выбираете опцию из выпадающего списка с помощью LId3?

Member 10928805

да

tninis

попробуйте сделать это и удалите onclick="enable_disable()" из выпадающего списка
$('#LId3').change(функция() {
$("#GFG :input").prop("disabled", false);
});

Member 10928805

тем не менее он не работает при выборе выпадающего списка для поиска

tninis

только что протестирован на codepen, и когда я выбираю опцию, inputes включается, покажите мне, что вы сделали.

Member 10928805

Это то, что я сделал, вы уверены, что это поисковый выпадающий список?







$(документ).готово(функция () {
$("#GFG :input").prop("disabled", true);
});

$('#LId3').change(функция () {
$("#GFG :input").prop("disabled", false);
}










tninis

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

Member 10928805

Это выпадающий список, из которого вы можете искать элементы. Мой должен извлекать данные из базы данных.

Member 10928805

Жаль, что я не могу показать тебе картинку

tninis

вы имеете в виду контроль select2 ?
загрузите изображение куда-нибудь и отправьте ссылку

Member 10928805

да, select2, все еще новый в этом, так что у меня нет учетной записи для загрузки вещей и всего остального.

tninis

только что протестирован с select2, и код, который я вам посылаю, включает входы, проверьте консоль, если есть ошибка

Member 10928805

Хорошо, спасибо, могу я посмотреть, как вы назвали свой select2.

tninis

$('#LId3').change(функция() {
$("#GFG :input").prop("disabled", false);
});

1 Ответов

Рейтинг:
2

NP64

У меня есть раскрывающийся список bootstrap multiselect. Я использовал следующий код, чтобы включить/отключить элемент на странице для конкретного выбора выпадающего значения.

$("#drpList").change(function () {
            var selection = $('#drpList option:selected');
            var selected = [];
            $(selection).each(function(index, brand){
                selected.push([$(this).val()]);
                alert(selected);
                if (selected == 123) {
                    $("#txtComment").prop('disabled', true);
                }
                else {
                    $("#txtComment").prop('disabled', false);
                }
            });
        });