Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Массив элементов

3.7K
12 апреля 2003 года
stepashka
3 / / 12.04.2003
На странице содержится форма и в ней таблица.
Строки формируются пользователем динамически с помощью DOM + JavaScript.
Ячейки таблицы содержат элементы ввода.
Всем элементам даны такие имена: "elem[]"
Форма отсылается в PHP скрипт. Там я могу получить доступ к значениям элементов ввода как к массиву, т.е. $elem[0], $elem[1] ...

Можно ли нечто подобное выполнить на клиентской стороне с помощью JavaScript?

Пробовал делать так:
document.all.elem.value
не проходит.

Или единственный выход это перебирать все дочерние элементы таблицы и выбирать из них нужные?
372
12 апреля 2003 года
Flying
312 / / 20.09.2000
Цитата:
Originally posted by stepashka
На странице содержится форма и в ней таблица.
Строки формируются пользователем динамически с помощью DOM + JavaScript.
Ячейки таблицы содержат элементы ввода.
Всем элементам даны такие имена: "elem[]"
Форма отсылается в PHP скрипт. Там я могу получить доступ к значениям элементов ввода как к массиву, т.е. $elem[0], $elem[1] ...

Можно ли нечто подобное выполнить на клиентской стороне с помощью JavaScript?

Пробовал делать так:
document.all.elem.value
не проходит.

Или единственный выход это перебирать все дочерние элементы таблицы и выбирать из них нужные?



Поскольку в имени используются специальные символы - перебор в данном случае единственный выход.
И еще - document.all работает только в IE, вместо него тебе необходимо пользоваться стандартной конструкцией:

var form = document.getElementById('yourFormID');
for (elm in form)
{
// Здесь перебор элементов формы
};

3.7K
12 апреля 2003 года
stepashka
3 / / 12.04.2003
Цитата:
Originally posted by Flying


Поскольку в имени используются специальные символы - перебор в данном случае единственный выход.
И еще - document.all работает только в IE, вместо него тебе необходимо пользоваться стандартной конструкцией:

var form = document.getElementById('yourFormID');
for (elm in form)
{
// Здесь перебор элементов формы
};



Спасибо. Кстати в Opera 6 document.all так же работает.

Кстати почитал MSDN и нашел еще один метод:
var coll = document.all.my_table.all.tags"INPUT");
for (i=0;i<coll.length;++i) {
alert(coll(i).value);
}

372
12 апреля 2003 года
Flying
312 / / 20.09.2000
Цитата:
Originally posted by stepashka


Спасибо. Кстати в Opera 6 document.all так же работает.

Кстати почитал MSDN и нашел еще один метод:
var coll = document.all.my_table.all.tags"INPUT");
for (i=0;i<coll.length;++i) {
alert(coll(i).value);
}



document.all работает в Opera только в режиме "эмуляции" IE. В Gecko-powered (Mozilla, Netscape 6/7, Galeon, Phoenix, Camino и т.п.) и KHTML-powered (Konqueror, Safari) браузерах это работать не будет.

По проводу "еще одного метода" - это также использование пресловутого document.all. Советую тебе вместо MSDN почитать спецификации DOM Level 1 (http://www.w3.org/TR/REC-DOM-Level-1) и DOM Level 2 (http://www.w3.org/DOM/DOMTR#dom2) - тогда твой код будет работать во всех браузерах. Кроме того очень меого отличного материала можно найти на http://www.zvon.org

3.7K
12 апреля 2003 года
stepashka
3 / / 12.04.2003
Цитата:
Originally posted by Flying


document.all работает в Opera только в режиме "эмуляции" IE. В Gecko-powered (Mozilla, Netscape 6/7, Galeon, Phoenix, Camino и т.п.) и KHTML-powered (Konqueror, Safari) браузерах это работать не будет.

По проводу "еще одного метода" - это также использование пресловутого document.all. Советую тебе вместо MSDN почитать спецификации DOM Level 1 (http://www.w3.org/TR/REC-DOM-Level-1) и DOM Level 2 (http://www.w3.org/DOM/DOMTR#dom2) - тогда твой код будет работать во всех браузерах. Кроме того очень меого отличного материала можно найти на http://www.zvon.org



Спасибо большое за ответ и за ссылки. Как раз вопросы совместимости меня и волновали.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог