$('#apply-form input').blur(function()
{
if( !$(this).val() ) {
$(this).parents('p').addClass('warning');
}
});
Et vous n'avez pas nécessairement besoin .length
ou voir si c'est >0
puisqu'une chaîne vide est évaluée à false de toute façon, mais si vous le souhaitez, pour des raisons de lisibilité :
$('#apply-form input').blur(function()
{
if( $(this).val().length === 0 ) {
$(this).parents('p').addClass('warning');
}
});
Si vous êtes sûr qu'il fonctionnera toujours sur un élément de type champ de texte, vous pouvez simplement utiliser this.value
.
$('#apply-form input').blur(function()
{
if( !this.value ) {
$(this).parents('p').addClass('warning');
}
});
Vous devez également prendre note que $('input:text')
saisit plusieurs éléments, spécifie un contexte ou utilise la commande this
si vous voulez juste une référence à un élément unique (à condition qu'il y ait un champ de texte dans les descendants/enfants du contexte).
2 votes
La pseudo-classe :empty représente tout élément qui n'a pas d'enfant. du tout. Seuls les nœuds des éléments et le texte (y compris les espaces blancs) sont pris en compte. Les commentaires ou les instructions de traitement n'ont aucune incidence sur le fait qu'un élément soit considéré comme vide ou non.