JavaScript для мага


Иерархия объектов в JavaScript - часть 3


 

Если Вы имеете дело с большими страницами, то процедура адресации к различным объектам по номеру может стать весьма запутынной. Например, придется решать, как следует обратиться к объекту document.forms[3].elements[17] document.forms[2].elements[18]? Во избежание подобной проблемы, Вы можете сами присваивать различным объектам уникальные имена. Как это делается, Вы можете увидеть опять же в нашем примере:

 

<form name="myForm">

Name:

<input type="text" name="name" value=""><br>

...

 

Эта запись означает, что объект forms[0] получает теперь еще и второе имя - myForm. Точно так же вместо elements[0] Вы можете писать name (последнее было указано в атрибуте name тэга <input>). Таким образом, вместо

 

name= document.forms[0].elements[0].value;

 

Вы можете записать

 

name= document.myForm.name.value;

 

Это значительно упрощает программирование на JavaScript, особенно в случае с большими web-страницами, содержащими множество объектов. (Обратите внимание, что при написании имен Вы должны еще следить и за положением регистра - то есть Вы не имеете права написать myform вместо myForm). В JavaScript многие свойства объектов достпуны не только для чтения. Вы также имеете возможность записывать в них новые значения. Например, посредством JavaScript Вы можете записать в упоминавшееся поле новую строку.

 

(online-версия руководства позволит Вам проверить этот скрипт немедленно)

 

Пример кода на JavaScript, иллюстрирующего такую возможность - интересующий нас

фрагмент записан как свойство onClick второго тэга <input>:

 

<form name="myForm">

<input type="text" name="input" value="bla bla bla">

<input type="button" value="Write"

  onClick="document.myForm.input.value= 'Yo!'; ">

 

Сейчас я не имею возможности описывать каждую деталь данного примера. Намного лучше будет, если Вы попробуете сами понять иерархию объектов в JavaScript, обратившись к справочнику по JavaScript. В заключение я написал небольшой пример. В нем Вы увидите, как используются различные объекты. Попытайтесь разобрать его, обращаясь за помощью к документации, предоставляемой фирмой Netscape, или - еще лучше - к моей книге по JavaScript..: -)




Начало  Назад  Вперед