Подскажите как побороть следующую проблему:
alert(errors);
document.getElementById(objid).disabled = false;
document.getElementById(objid).innerHTML = errors;
odjid - id селекта. В результате исполнения кода alert(errors) показывает содержимое переменной вида:
<option>.....</option>
<option>.....</option>
но после document.getElementById(objid).innerHTML = errors; объект остается пустой.
Проблема характерна только для IE
Спустя 7 минут, 54 секунды (25.02.2011 - 13:03) ApuktaChehov написал(а):
IE некорректно работает со вставкой <option> методом innerHTML. Это проблема решается формированием документа через DOM.
Спустя 1 минута, 57 секунд (25.02.2011 - 13:05) rolling написал(а):
не могли бы Вы подробнее объяснить, как это сделать?
Спустя 15 минут, 44 секунды (25.02.2011 - 13:21) ApuktaChehov написал(а):
предположим у вас есть массив данных:
теперь мы пойдем по этому массиву и создадим документ:
Не проверял его работоспособность, но суть, я думаю, ясна.
var arr = Array('blue','red','green','white');
теперь мы пойдем по этому массиву и создадим документ:
var sel = document.getElementById('select'); //это наш список, не пока без option
for(i = 0; i < arr.length; i++)
{
var new_opt = document.createElement('option'); //это наш option
new_opt.innerHTML = arr[i]; // вставляем в него значение
sel.appendChild(new_opt); //вставляем этот option в список
}
Не проверял его работоспособность, но суть, я думаю, ясна.
Спустя 56 секунд (25.02.2011 - 13:22) rolling написал(а):
спасибо