Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > All


Автор: Гость_Олег 19.10.2004, 19:47
В JavaScript'e есть метод или свойство или ещё что-то, которое называется all.
Скажите, что это такое и зачем оно нужно.

Автор: Sardar 19.10.2004, 20:38
Это DOM, придуманный нетскаповцами, собран из различных коллекций, таких как forms, frames, images и т.д. MS расширила коллекции, в all лежат все элементы под числовыми индексами и именами/id. Модель уже устарела, пользуйся document.getElementById. Впрочем такие коллекции как frames, forms и т.п. до сих пор используются, т.к. это удобно и поддерживается всеми браузерами.

Автор: Гость_Олег 19.10.2004, 20:47
На этом форуме мне дали вот такой скрипт:
Код
<html>
<head>
<script>
function func1()
{if (document.forms.form1.elements.select1.value)
document.[b]all[/b].res.innerHTML = "Вы выбрали цифру " + document.forms.form1.elements.select1.value;
}
</script>
</head>
<body>
<form name="form1" action="" method="post">
<select name="select1" size="1" onChange="func1();">
<option></option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
</form>
<p id="res">&nbsp;</p>
</body>
</html>

Когда я в нём убираю all или ставлю вместо all getElementById, то скрипт не работает!

Автор: Sardar 20.10.2004, 00:23
Цитата
Когда я в нём убираю all или ставлю вместо all getElementById, то скрипт не работает!

Ну давай посмотрим на это логически ;-)
all - существительное(скажем так "что не делается"), getElementById - глагол, что то должно отработать. "Глаголы" в JS это функции и методы обьектов, значит: document.getElementById() - есть вызов метода обьекта document. Пойдем дальше, из названия мы сразу видим что от нас требуется некий id, это id элемента P: res. Переписываем код:
Код

<html>
<head>
<script>
function func1(val) {
if (val) document.getElementById("res").innerHTML = "Вы выбрали цифру " + val;
}
</script>
</head>
<body>
<form name="form1" action="" method="post">
<select name="select1" size="1" onChange="func1(this.value);">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
</form>
<p id="res">&nbsp;</p>
</body>
</html>

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)