В материализованном элементе выбора не будут показаны переданные опции - PullRequest
0 голосов
/ 31 марта 2020

Мой вопрос, вероятно, очень прост. Я хочу заполнить элемент выбора 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 без инициализации выглядит так же, как в документации. Любой совет?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...