Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Вопрос по innerHTML


Автор: <Spawn> 7.7.2004, 19:27
Первичный код:
Код
var dirs = drs.split(":");
var newHTML = "";
for (var counter = 0; counter < dirs.length; counter++)
 newHTML += "<option>" + dirs[counter] + "</option>";


Почему вот так работает:

Код
sel.outerHTML = "<select multiple size='3' class='FileDirs' id='DirsSelect'>" + newHTML + "</select>";


А вот так не работает?

Код
sel.innerHTML = newHTML;


???

Просто интересно.

Автор: Sardar 7.7.2004, 19:56
Это глюк IE, в Мозилле работает.

Автор: <Spawn> 7.7.2004, 20:00
Sardar Ок, спасибо

Автор: mix 7.7.2004, 20:02
Одназначно глюк IE.
Я уже сталкивался с подобным, гда при изменении innerHTML'я тега
<PRE> терялся формат (переносы строк, табы итп)

Автор: Gold Dragon 7.7.2004, 20:47
Народ, если не трудно, поясните что код делает, въехать хотца withstupid.gif

Автор: <Spawn> 7.7.2004, 20:54
Red Dragon Ты про какой код?smile.gif

Автор: Sardar 7.7.2004, 20:54
2Red Dragon юзаем не DOM'овский innerHTML что бы изменить опции в select'е smile.gif

Автор: Cheba 8.7.2004, 13:22
А с ним, глюком этим, можно как-то бороться?

Автор: Sardar 8.7.2004, 14:30
Возможно, но зачем, если есть некоторый другой выход?
У ИЕ есть еще табла: если через innerHTML вставлять строки в таблицу, выйдет Runtime Error, боротся с которым можно обернув строки в tbody(на форуме уже обсуждалось).

Автор: Юрик 14.7.2004, 15:39
Есть еще трабла в ИЕ с innerHTML - пока страница не догрузится - это свойство недоступно... Было дело на эту фичу напаровался smile.gif

Автор: mix 14.7.2004, 15:44
Цитата
Есть еще трабла в ИЕ с innerHTML - пока страница не догрузится - это свойство недоступно... Было дело на эту фичу напаровался

Браузеры не обязаны до полной загрузки страницы позволять скриптам читать и тем более изменять объектную структуру текущей странички.

Автор: Юрик 14.7.2004, 15:53
Дык никто и не говорил про то что обязаны...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)