Клиентский JavaScript 1.3

         

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


В JavaScript имеется специальное слово this, которое можно использовать в методе для обращения к текущему объекту. Например, у Вас имеются: функция validate для проверки свойства value объекта, объект и значения 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 ссылается в методе на вызывающий объект.

При сочетании со свойством form, 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>



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