Ядро JavaScript 1.5. Руководство по использованию

Использование Слова this для Ссылок на Объект


JavaScript имеет специальное ключевое слово this, которое может использоваться внутри метода для ссылки на текущий объект. Например, если у Вас имеется функция validate, проверяющая значение свойства объекта и значения high и low:

function validate(obj, lowval, hival) {

   if ((obj.value < lowval) (obj.value > hival))

      alert("Invalid Value!")

}

то Вы можете вызвать validate в обработчике события onChange любого элемента формы, используя this для передачи обработчику элемента формы, как в этом примере:

<INPUT TYPE="text" NAME="age" SIZE=3

   onChange="validate(this, 18, 99)">

В общем, this ссылается в методе на вызывающий объект.

В сочетании со свойством формы, this может обращаться к родительской форме текущего объекта. В следующем примере форма myForm содержит Text-объект и кнопку. Если пользователь щёлкает на кнопке, значением Text-объекта становится имя формы. Обработчик нажатия кнопки onClick использует this.form для ссылки на родительскую форму, myForm.


<FORM NAME="myForm">

Form name:<INPUT TYPE="text" NAME="text1" VALUE="Beluga">
<P>

<INPUT NAME="button1" TYPE="button" VALUE="Show Form Name"

   onClick="this.form.text1.value=this.form.name">
</FORM>





Содержание раздела