Strict Standards: Resource ID#36 used as offset, casting to integer (36) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#38 used as offset, casting to integer (38) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#39 used as offset, casting to integer (39) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Версия для печати :: Параметр id. Может ли дублироваться?
ТвойWeb » WebMaster класс » JavaScript » Параметр id. Может ли дублироваться?

Страниц (2): [1] 2 »
 

1. kr12 - 25 Декабря, 2005 - 03:22:44 - перейти к сообщению
Леголегс пишет:
document.getElementById("ИД"Подмигивание полностью заменяет document.all

CODE:

<form id=f2>
<a id=a>a2</a><input id=i>
</form>
<form id=f3>
<a id=a>a3</a><input id=i>
</form>
<a onMouseOver="document.body.innerHTML+=document.forms['f2'].getElementById('a').innerHTML">---------</a>
<a onMouseOver="document.body.innerHTML+=document.forms['f2'].all['a'].innerHTML">---------</a>
2. ETC - 25 Декабря, 2005 - 05:11:42 - перейти к сообщению
kr12
Ты неправ. Два одинаковых id не должно существовать
3. Maverick - 25 Декабря, 2005 - 06:11:20 - перейти к сообщению
ETC
Могут и не только. Просто функция getElementById вернет первый объект с таким ID. Простой пример:
CODE:

<html>
<head>
<title>Untitled</title>
</head>

<body>
<table id='table'>
<tr>
<td>
Таблица 1
</td>
</tr>
</table>
<table id='table'>
<tr>
<td>
Таблица 2
</td>
</tr>
</table>
<table id='table'>
<tr>
<td>
Таблица 3
</td>
</tr>
</table>
<table id='table'>
<tr>
<td>
Таблица 4
</td>
</tr>
</table>
<table id='table'>
<tr>
<td>
Таблица 5
</td>
</tr>
</table>

<a href="JavaScript:void(0)" onclick="document.all.table.style.display='none';document.all.table.id='table1';">hide</a>


</body>
4. ETC - 25 Декабря, 2005 - 09:14:50 - перейти к сообщению
Maverick
Тогда пишите правильно. Использование .all не рекомендуется.
5. kr12 - 25 Декабря, 2005 - 11:46:06 - перейти к сообщению
Насколько я понял, getElementById - метод у document, а в моем примере с формами, он не подходит. .all - работает в O, наверно и в Nn.
6. Maverick - 25 Декабря, 2005 - 12:21:34 - перейти к сообщению
kr12

Наоборот, getElementById используется и работает с любыми объектами.
7. kr12 - 25 Декабря, 2005 - 12:48:27 - перейти к сообщению
Я ведь привел жизненный пример с формами
8. ETC - 25 Декабря, 2005 - 12:59:49 - перейти к сообщению
kr12
Ты привёл неправильный пример. К формам обращаются через name, а не id. document.form1.name1.value и т.п.
9. Digital man 53 - 25 Декабря, 2005 - 14:52:15 - перейти к сообщению
1)Спецификация HTML 4.01:
id
This attribute assigns a name to an element. This name must be unique in a document.
Это значит, что в документе может быть лишь по одному элементу для каждого id.

2)kr12, когда обращаешься к элементу через id, совсем не обязательно упоминать при этом форму, т.е. в твоем примере надо написать
document.body.innerHTML += document.getElementById('a'Подмигивание.innerHTML

ЗЫ: если меня не глючит, то в xhtml 1.0 у тега form уже нет атрибута name
10. Леголегс - 25 Декабря, 2005 - 20:21:48 - перейти к сообщению
ETC пишет:
Два одинаковых id не должно существовать
Именно. Кто не верит может заглянуть на http://validator.w3.org и проверить код, приведённый Maverick'ом.

Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0372]     [ Gzipped ]



Notice: ob_end_flush(): failed to send buffer of ob_gzhandler (1) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/page_tail.php on line 33