Mam dynamiczny formularz, w którym użytkownik dostarcza nazwę i opis:Dlaczego funkcja .val() nie jest funkcją?
<label>Name</label><br />
<input type="text" name="name[]" maxlength="255" /><br />
<label>Description</label><br />
<textarea name="desc[]"></textarea><br />
próbuję sprawdzić poprawność formularza z JavaScript, aby zapewnić, że jeśli nazwa jest określona, wówczas opis musi być wprowadzony.
$("input[name='name[]']").each(function() {
var index = $("input[name='name[]']").index(this);
if ($(this).val() != '') {
alert($("textarea[name='desc[]']").get(index).value);
alert($("textarea[name='desc[]']").get(index).val());
}
}
Pierwszy alert() działa zgodnie z oczekiwaniami, jednak z drugiej alert uzyskać: $ ("textarea [name = 'desc []']") dostać (indeks) .val() nie jest. funkcja
Jaka jest różnica? Dlaczego nie mogę korzystać z funkcji jQuery?
Etykiety są raczej bezużyteczne, ponieważ są one teraz. Nadaj im odpowiednie atrybuty "dla" i skojarz je z odpowiednimi elementami input/textarea. – kangax