| imho.ws |
![]() |
|
|
|
# 1 |
|
Junior Member
Регистрация: 20.06.2003
Адрес: Israel
Сообщения: 106
![]() |
getElementsByName
Помогите.
<div id=main name=main> bla bla bla..................... </div> почему конструция: document.getElementById('main').innerHTML возращает мне желаемый результат а конструция: document.getElementsByName('main').innerHTML нет? Я может чего недопонимаю? |
|
|
|
|
# 3 |
|
::VIP::
Регистрация: 12.11.2002
Адрес: Nicosia, Cyprus
Сообщения: 1 285
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Stasik
Есть такая функция Izzyy 1. getElementsByName возвращает коллекцию, а не один элемент, поэтому нужно обходить все элементы последовательно. 2. В теге div параметр name не используется. MSDN - getElementsByName() method MSDN - DIV element
__________________
"If people only knew how hard I work to gain my mastery, it wouldn't seem so wonderful at all." Michelangelo Buonarroti Последний раз редактировалось Saruman; 28.01.2004 в 01:59. |
|
|
|
|
# 5 |
|
Full Member
Регистрация: 19.07.2003
Адрес: Israel
Сообщения: 924
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
getElementById возврашяет элемент если он один с таким id, или список если таких элементов несколько.
getElementsByName возвращяет список, даже если элемент с таким именем один.
__________________
Столько дел, что и работой занятся некогда... |
|
|
|
|
# 7 |
|
::VIP::
Регистрация: 12.11.2002
Адрес: Nicosia, Cyprus
Сообщения: 1 285
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Izzyy
Смысл функции в том, что вернуть все элементы, для которых name=запросу. Затем ты этот список обходишь как обычный массив, циклом, к примеру, и уже анализируешь элементы. Один и тот же name может быть присвоен любому числу элементов, а id должен быть уникальным - отсюда и разница в работе. Если не знаешь, как работать на ява-скрипте с коллекциями - то так и спрашивай. Если знаешь - то что непонятно-то?
__________________
"If people only knew how hard I work to gain my mastery, it wouldn't seem so wonderful at all." Michelangelo Buonarroti |
|
|
|
|
# 8 |
|
Junior Member
Регистрация: 20.06.2003
Адрес: Israel
Сообщения: 106
![]() |
На сколько ты уверен в том, что ИД должен быть уникальным? Потому как у меня есть страницы, в которых один и тот же ИД используется несколько раз. Я почему-то наивно полагал, что ИД необходим для определения таблицы стилей для элемента и вовсе не обязательно, что бы элемент с определенным ИД был один единственный. Я могу создать столько слоев сколько я захочу с одним и тем же ИД(например) тогда на мой взгляд getElementById вернет мне массив этих слоев.
Я был полностью уверен, что getElementByName работате по такому же принципу есть один элемент возвращает один, есть несколько возвращает несколько. Т.е. из твоих солв я должен делать что-то типа: for (i=0;i<getElementByName('example').lenght;i++) { и в этом цикле проверять тот ли это элемент который мне нужен? } Теперь поправте меня если я где ошибся..... |
|
|
|
|
# 9 | |
|
Full Member
Регистрация: 19.07.2003
Адрес: Israel
Сообщения: 924
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Цитата:
Например: <input id=UniqueID class=CssClass>
__________________
Столько дел, что и работой занятся некогда... |
|
|
|
|
|
# 10 |
|
Junior Member
Регистрация: 20.06.2003
Адрес: Israel
Сообщения: 106
![]() |
Хорошо.Допустим.
А теперь все таки еще раз вопрос КАК я могу найти нужный мне элемент по имени? Я не могу понять как ИД так и имена элементов могут повторяться разное кол-во раз. НО почему-то ф-ция getElementsByName отличается от getElementById. Короче, если мне проще использовать getElementsByName так, я должен делать проверку в цикле для каждого элемента из массива возвращенных, проверяя длину возвращенного массива? |
|
|
|
|
# 11 |
|
Full Member
Регистрация: 19.07.2003
Адрес: Israel
Сообщения: 924
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
если тебе очень важно использовать getElementsByName , то используй её но давай всегда уник имена и бери первый(и единственный) член коллекции которую она вернёт
__________________
Столько дел, что и работой занятся некогда... |
|
|
|
|
# 12 | |||||||
|
::VIP::
Регистрация: 12.11.2002
Адрес: Nicosia, Cyprus
Сообщения: 1 285
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Izzyy
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
А вообще, если честно, не надо маяться и приспосабливать для своих целей то, что для них не приспособлено. Проставь везде уникальные id и обращайся напрямую к элементу, т.к. оно для этого и служит.
__________________
"If people only knew how hard I work to gain my mastery, it wouldn't seem so wonderful at all." Michelangelo Buonarroti |
|||||||
|
|