Динамически создавать элементы элементов в Javascript
Каков предпочтительный способ в Javascript для динамического создания элементов опций DOM? Я нашел как конструктор Option, так и вариант createElement, который используется в фактическом коде следующим образом:
var option = new Option(text, value);
и это:
var option = document.createElement('option');
option.text = text;
option.value = value;
Есть ли недостатки/проблемы совместимости с любым из этих методов? Кроме того, существуют ли какие-либо другие методы для динамического создания параметров, которые должны быть предпочтительнее вышеупомянутых по некоторым причинам?
Ответы
Ответ 1
Нет никаких различий между двумя методами, о которых я знаю. Использование конструктора Option
позволяет вам удобно установить значение и текст опции, но вы можете сделать то же самое с помощью свойств value
и text
.
Возможно, был способ innerHTML
, но IE8 и более старые терпят неудачу в этом...
Ответ 2
Я заметил, например, что использование нового параметра Option() не работает в IE9, где он работает в IE10 и IE11. Недавно я вернулся к исходному коду и возвратил изменение, которое кто-то сделал, чтобы вернуться с использованием document.createElement('option'), чтобы IE9 мог работать.