Я не могу удалить ранее выбранные данные в Choice.js [закрыто]Javascript

Форум по Javascript
Ответить
Anonymous
 Я не могу удалить ранее выбранные данные в Choice.js [закрыто]

Сообщение Anonymous »

Здесь у меня есть проблема с использованием Choice.js, где данные, выбранные в первом раскрывающемся списке, все еще появляются в других раскрывании. Здесь я добавил функцию раскрывающегося обновления в других функциях, результаты все же. Данные по -прежнему появляются во всех раскрывающихся времени, даже если они были выбраны < /p>
Я использую выбор. Может быть, есть варианты, отличные от выбора.function initChoicesOnNewSelect(selectElement) {
if (!$(selectElement).hasClass('choices-initialized')) {
new Choices(selectElement, {
searchEnabled: false,
itemSelectText: '',
});
$(selectElement).addClass('choices-initialized');
}
}

function updateDropdownOptions() {
var selectedValues = [];

// Ambil semua nilai yang sudah dipilih di dropdown
$('.gejala-select').each(function() {
var selectedValue = $(this).val();
if (selectedValue !== "") {
selectedValues.push(selectedValue);
}
});

$('.gejala-select').each(function() {
var currentSelect = $(this);
var currentValue = currentSelect.val();

currentSelect.find('option').each(function() {
var optionValue = $(this).val();
if (optionValue !== "" && selectedValues.includes(optionValue) && optionValue !== currentValue) {
$(this).prop('disabled', true);
} else {
$(this).prop('disabled', false);
}
});
});

$(".gejala-wrapper").each(function(index) {
if (index === 0) {
$(this).find(".btn-hapus-gejala").hide();
} else {
$(this).find(".btn-hapus-gejala").show();
}
});
}

$(document).ready(function() {
$(".btn-tambah-gejala").click(function() {
var newDropdown = `



Pilih Gejala
@foreach($gejala_list as $gejala)
{{ $gejala->nama_gejala }}
@endforeach


Hapus
`;
$("#gejala-container").append(newDropdown);

let newSelect = $("#gejala-container .gejala-select").last()[0];
initChoicesOnNewSelect(newSelect);

updateDropdownOptions();
});

$(document).on("click", ".btn-hapus-gejala", function() {
if ($('.gejala-wrapper').length > 1) {
$(this).closest(".gejala-wrapper").remove();
updateDropdownOptions();
}
});

$(document).on('change', '.gejala-select', function() {
updateDropdownOptions();
});

$(".gejala-select").each(function() {
initChoicesOnNewSelect(this);
});

updateDropdownOptions();
});


Подробнее здесь: https://stackoverflow.com/questions/795 ... -choice-js
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»