Question

Ce qui est retourné si $ ( '# id') ne correspond pas à quoi que ce soit? Je pensais que ce serait nul ou faux ou quelque chose de similaire si j'ai essayé de vérifier comme ceci:

var item = $('#item');
if (!item){
    ...
}

Mais cela ne fonctionne pas.

Était-ce utile?

La solution

Vous pouvez trouver le nombre d'éléments appariés en utilisant:

$('selector').length

Pour vérifier si aucun élément ont été appariés, utilisez:

var item = $('#item');
if (item.length == 0) {
  // ...
}

Autres conseils

Alors que $('selector').length est idéal pour découvrir combien d'objets vos matchs de sélection, en fait complètement son unnecesary. La chose à propos de jQuery est que toutes les fonctions sélecteur à base utilisent une longueur interne, vous pouvez donc faire $(selector).hide() (ou autre) et il ne prend aucune mesure pour un ensemble vide.

Un objet jQuery qui ne contient pas de nœuds DOM.

Vous devriez pouvoir utiliser

var item = $('#item');
if (!item[0]){
    ...
}

pour votre contrôle d'existence.

un alias de l'attribut de longueur est la méthode size (). Ainsi, vous pouvez également interroger essentiellement:

$ ( "sélecteur"). Size ()

pour voir combien d'éléments correspondent.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top