The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"select, selectedIndex и IE"
Отправлено MAK, 19-Сен-06 19:44 
Добрый день. Сегодня столкнулся с очень интересной проблемой.
если список (<select>), при onChange вызывается функция для генерирования второго списка из массива. В эту же функцию передается текущий элемент. Необходимо "выставить" выбранный элемент после отправки формы (метод - post). Firefox, Opera все делают, а вот Explorer отказывается (хотя списки прогружает). В чем может быть проблема?
-[ исходник ]-------------------------------------
function ChangeHouse(ctl, d, curd)
{
    // ctl - элемент, на котором "ловим" onChange
    // d   - элемент, куда надо "прогрузить" новый список
    // curd - текущий/выбранный элемент
    var node;
    var frm = document.forms[0];
    var doorways = [0, 5, 5, 5, 4, 3, 3, 4];
    // количество элементов совпадает с количеством option'ов в ctl

    while (d.childNodes.length > 0)
        d.removeChild(d.childNodes[0]);

    node = document.createElement("option");
    node.value = 0;
    node.appendChild(document.createTextNode("№"));
    d.appendChild(node);

    if (ctl.selectedIndex > 0)
    {
        var cd = doorways[ctl.selectedIndex];

        for (var i = 1; i <= cd; i++)
        {
            node = document.createElement("option");
            node.value = i;
            node.appendChild(document.createTextNode(i));

            d.appendChild(node);
        }

        d.selectedIndex = curd;
    }
}
...

<select name="house" onChange="ChangeHouse(this, this.form.doorway, 0);">
    <option value="0" selected>№</option>
    <!-- здесь идут дома -->
</select>
<select name="doorway" class="short">
    <option value="0" selected>№</option>
</select>
...
window.onload = ChangeHouse(document.forms[0].house, document.forms[0].doorway, 3);

 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.

На сайте действует частичное премодерирование - после публикации некоторые сообщения от анонимов могут автоматически скрываться ботом. После проверки модератором ошибочно скрытые сообщения раскрываются. Для ускорения раскрытия можно воспользоваться ссылкой "Сообщить модератору", указав в качестве причины обращения "скрыто по ошибке".



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру