Warum ist .val () keine Funktion?

8

Ich habe ein dynamisches Formular, in dem der Benutzer einen Namen und eine Beschreibung angibt:

%Vor%

Ich versuche, das Formular mit Javascript zu validieren, um sicherzustellen, dass, wenn der Name angegeben wird, eine Beschreibung eingegeben werden muss.

%Vor%

Der erste alert () funktioniert wie erwartet, aber mit dem zweiten Alarm, den ich bekomme: $ ("textarea [name = 'desc []']"). get (index) .val () ist keine Funktion

Was ist der Unterschied? Warum kann ich die jQuery-Funktion nicht verwenden?

    
Matt McCormick 25.09.2009, 21:09
quelle

2 Antworten

16

Verwenden Sie eq (index) anstelle von get (index) und es wird ein jQuery-Objekt zurückgegeben. Das jQuery-Objekt verfügt über eine val () -Methode, die wie erwartet für einen Textbereich funktionieren sollte.

val () Dokumentation

  

Für alle Eingaben wird ein Wert zurückgegeben   Elemente, einschließlich wählt und   Textareas. Für mehrere wählt ein   Array von Werten wird zurückgegeben.

Beispiel:

%Vor%     
tvanfosson 25.09.2009, 21:22
quelle
17

Weil

%Vor%

ist DOM-Objekt, nicht jQuery. Es hat keine Methode val. Verwenden Sie

%Vor%

für den Textarea-Wert.

    
Anatoliy 25.09.2009 21:12
quelle

Tags und Links