jQuery kullanarak girişlerin boş olup olmadığını kontrol edin
Tüm alanların doldurulmasını istediğim bir formum var. Bir alana tıklanırsa ve doldurulmazsa, kırmızı bir arka plan görüntülemek istiyorum.
İşte benim kodum:
$('#apply-form input').blur(function () {
if ($('input:text').is(":empty")) {
$(this).parents('p').addClass('warning');
}
});
Alanın doldurulup doldurulmadığına bakılmaksızın uyarı sınıfını uygular.
Neyi yanlış yapıyorum?
473
3
Boş bir dize zaten false olarak değerlendirildiği için
.length' değerine ya da
>0' olup olmadığına bakmanıza gerek yoktur, ancak okunabilirlik amacıyla isterseniz bunu yapabilirsiniz:Her zaman bir textfield öğesi üzerinde çalışacağından eminseniz, o zaman sadece
this.value
kullanabilirsiniz.Ayrıca,
$('input:text')
ifadesinin birden fazla öğeyi yakaladığına dikkat edin, bir bağlam belirtin veya yalnızca tek bir öğeye referans istiyorsanızthis
anahtar sözcüğünü kullanın (bağlamın alt öğelerinde/çocuklarında bir metin alanı olması koşuluyla).Bir elemanın hiçbir alt eleman içermediğini görmek için
:empty
sözde seçicisi kullanılır, değeri kontrol etmelisiniz: