Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сбор данных со страницы 
:(
    Опции темы
serpico
Дата 25.10.2010, 18:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 25.1.2009

Репутация: нет
Всего: нет



Хочу наладить сбор c селектов на странице, наваял следующий код
Код

function getselects()
{
    var ret;
    try
    {
        var selects = document.getElementsByTagName("select");
        for (var i = 0; i < selects.length; i++)
        {
            for (var j = 0; j < selects[i].options.length; j++)
            {
                if (selects[i].options[j].selected)
                {
                    ret += "select[" + i + "]." + selects[i].getAttribute('name') + "[" + j + "]: " + selects[i].options[j].value + "\r\n";
                }
            }
        }
    }
    catch (_ex)
    {
    }
    return ret;
}
alert(getselects());


но почему то не работает как надо.


Это сообщение отредактировал(а) serpico - 25.10.2010, 18:26
PM MAIL   Вверх
Amphiluke
Дата 25.10.2010, 18:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


   ☽
***


Профиль
Группа: Завсегдатай
Сообщений: 1253
Регистрация: 26.8.2009

Репутация: 39
Всего: 112



Цитата(serpico @  25.10.2010,  22:21 Найти цитируемый пост)
но почему то не работает как надо.

Как надо? Проверяю — всё работает. smile 
Уточните еще, в какой момент времени (сразу после загрузки страницы или по какому-то событию) вы вызываете функцию getselects.

Это сообщение отредактировал(а) Amphiluke - 25.10.2010, 18:49
PM   Вверх
Amphiluke
Дата 25.10.2010, 19:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


   ☽
***


Профиль
Группа: Завсегдатай
Сообщений: 1253
Регистрация: 26.8.2009

Репутация: 39
Всего: 112



P.S. Переменую ret при объявлении лучше сразу инициализировать.
Код

var ret = "";


И вообще, можно обойтись без вложенных циклов. smile 
Код

function getselects() {
    var ret = "";
    var j = 0;
    try {
        var selects = document.getElementsByTagName("select");
        for (var i = 0; i < selects.length; i++) {
            j = selects[i].selectedIndex;
            ret += "select[" + i + "]." + selects[i].getAttribute('name') + "[" + j + "]: " + selects[i].options[j].value + "\r\n";
        }
    } catch (_ex) {
    }
    return ret;
}

PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.2515 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.