У меня есть тег выбора, например:
<span id="reportProjectSelector">
<span>Reporting Project:</span>
<select id="reportProjectDropdown" onChange="loadChartWithData();" multiple="multiple"></select>
</span>
и
$(function() {
$('#reportProjectDropdown_${widgetId}').multiselect({
includeSelectAllOption: true
});
});
Здесь у меня есть несколько выпадающих цепочек других выпадающих списков, которые являются родителями «reportProjectDropdown». Для простоты давайте рассмотрим только один «проект». Итак, теперь у нас есть «Проекты», при смене которых срабатывает фильтр «Отчетные проекты». В настоящее время фильтр проекта отчетов не изменяет и не заменяет новые значения (в основном это нулевые или нулевые значения, которые в раскрывающемся списке заменяются на значения, подобные «Нет проектов отчетности»)
Я пытался удалить предыдущие значения, но с не повезло. Вот функция, которая, я ожидаю, выполнит эту работу.
function setDependentProjects (data, widgetId) {
$('#reportProjectDropdown').find('option').remove().end();
if(jQuery.isEmptyObject(data)) {
let newOption = new Option("No Projects", 0, true, true);
$('#reportProjectDropdown').append(newOption);
} else {
let selected = true;
for(let key in data) {
selected = "${defaultDependentProject}" == data[key];
let newOption = new Option(data[key], key, selected, selected);
$('#reportProjectDropdown').append(newOption);
selected = false;
}
}
loadChartWithData_${widgetId}(); //renders data as per the previous filters
}
Я что-то упустил или неправильно удаляю элементы?