Мой вопрос, вероятно, очень прост. Я хочу заполнить элемент выбора Materialize несколькими опциями. Я не хочу помещать свои параметры в HTML, я хочу сделать это из JSON с javascript (я получаю json из другого сервиса). В моем файле HTML у меня просто пустой выбор.
В документации я вижу, что во время инициализации выбора вы можете передать объект параметров. Я предполагаю, что это можно использовать для заполнения выпадающего списка. Чуть ниже указано, что правильным ключом является dropdownOptions, и вы должны передать ему UL. Я так и сделал, но UL пуст. Журнал консоли показывает, что ul построен правильно. Чего мне не хватает?
let ul = document.createElement("ul");
arr.forEach(oddelek => {
let li = document.createElement("li");
li.appendChild(document.createTextNode("Four"));
ul.appendChild(li);
});
console.log(ul); // looks good
M.FormSelect.init(selects, {
"dropdownOptions": ul
});
В чем может быть причина появления только пустого ul?
Поскольку приведенный выше код не работает, я решил просто добавить элементы в HTML с javascript, а затем запустите init с пустым объектом параметров. Но это не работает, раскрывающийся список все еще пуст.
Инициализация с пустым объектом параметров работает отлично, если элементы добавляются вручную в html, но не работает, если они добавляются через javascript. Понятия не имею почему, я вызываю init после добавления элементов. Проверка полученного html без инициализации выглядит так же, как в документации. Любой совет?