Zastosowanie 'this' do obiektu referencji
Zastosowanie this
do obiektu referencji
JavaScript posiada specjalne słowo kluczowe this
, które możemy użyć wewnątrz metody wskazującej nam aktualny obiekt. Na przykład: przypuśćmy, że mamy funkcję nazywającą się validate
, która waliduje wartość własności obiektów, nadając im wartość wyższą lub niższą:
function validate(obj, lowval, hival) { if ((obj.value < lowval) || (obj.value > hival)) alert("Invalid Value!") }
Następnie, możesz nazwać/powiedzieć, że funkcja validate
, w każdym elemencie formularza, onChange
posiada uchwyt, którego używa do przejścia do określonego elementu formularza
, jak w następującym przykładzie:
<INPUT TYPE="text" NAME="age" SIZE=3 onChange="validate(this, 18, 99)">
Generalnie, this
jest referencją do nazwy obiektu w metodzie.
Kiedy połączymy właściwości form
, this
który potrafi się odwołać do bieżącego obiektu formularza będącego jego 'rodzicem'. W poniższym przykładzie, formularz myForm
składa się z obiektu Text
oraz przycisku. Kiedy użytkownik kliknie przycisk, wartość obiektu Text
jest ustawiana do nazwy formularza. Przyciski wywołują uchwyt zdarzenia onClick
poprzez zastosowanie this.form
w celu wskazania formularza będącego 'rodzicem', 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>