Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   IE+JS вытащить <option> из списка (https://javascript.ru/forum/misc/17574-ie-js-vytashhit-option-iz-spiska.html)

Rojas 25.05.2011 09:53

IE+JS вытащить <option> из списка
 
Всем привет! Только начал разбираться в JS.
Проблема в следующем.
Динамические селекты. AJAX. От сервера получаю XML, парсю у клиента и вставляю в браузер. Для ФФ прекрасно работают responseXML и inerHTML. Тут вопросов нет. Для IE пришлось написать отдельную функцию, тут-то и начались проблемы ))

responseXML IE понимать отказался, поэтому получаю его в виде текста: responseText и парсю посредством match,
но сразу столкнулся с известным багом IE - innerHTML для <option> не работает.

Решения в инете сводятся либо к замене селекта целиком, либо к работе с document.createElement("OPTION").
Первое, самое простое решение мне не подходит, т.к. атрибуты onchange формируемого селекта задаются на стороне сервера.
Со вторым начал разбираться, тут и возник вопрос.
Код:

var xmlDoc = httpRequest.responseText;
var citystring = xmlDoc.match(/<cities>(.*)?<\/cities>/)[1];

в результате получаю список опшинов citystring :
Код:

<option value="0">Любой город</option>
<option value="445">Выборг</option>
<option value="451">Кириши</option>
<option  value="452">Кировск</option>
<option  value="459">Пикалево</option>
<option value="463">Санкт-Петербург</option>
<option  value="464">Светогорск</option>
<option  value="467">Сосновый Бор</option>

Вопрос вот в чем, как этот текстовый список преобразовать в массив опшинов для вставки в селект?
Спасибо.

Rojas 26.05.2011 16:32

В общем, решил все через json :)


Часовой пояс GMT +3, время: 01:46.