Javascript: Vérifier si un nom de classe existe
<div class="Trade">
<div id="Offer">
<div class="NoResults">No Result!</div>
<div class="FooterPager"> <span id="Offer"><a disabled="disabled">First</a> <a disabled="disabled">Previous</a> <a disabled="disabled">Next</a> <a disabled="disabled">Last</a> </span>
</div>
</div>
</div>
Voici mon code javascript:
function Check(){
return !(iframe.contentDocument.getElementById("Offer").firstElementChild.tagName.toLowerCase() == "table");
}
Est-il possible de retourner une valeur true ou false pour vérifier si la classe "NoResult" existe? Si oui, comment dois-je faire? Vous les gars rochers. Je ne peux pas changer le codage HTML, seul le javascript.
Vous devez vous connecter pour publier un commentaire.
Utilisation
classList
.Lectures Complémentaires (avertissement: lien vers mon propre post).
Si pas pris en charge dans vos plates-formes cibles, alors essayez...
classList
div.classList
?div
est une référence à unHTMLElement
, alors oui.En Javascript sans utiliser une librairie comme jQuery, vous pouvez le faire par:
Cette évalue à true lors de l' "MyClassName" apparaît n'importe où par elle-même à l'intérieur de la chaîne, telles que définies sur le
className
propriété.Dans votre cas particulier, quelque chose comme:
Il y a déjà une erreur dans ma réponse où il aurait tort d'identifier une correspondance partielle comme l'a souligné dans les commentaires. Fondamentalement, vous devez tenir compte dans la vérification que le nom de la classe est tout. Une belle façon de le faire (comme les autres réponses montrent), c'est que si vous les espaces avant et après l'intégralité de la
className
de la propriété et de la classe que vous recherchez, il trouvera toujours l'ensemble de la classe.Alors que cela fonctionne, je recommande Alex réponse comme tout
classList
n'est pas disponible dans tous les navigateurs (<= IE9 et quelques autres), il est plus propre solution au problème.Comment vérifier si un élément a une classe pour tous les navigateurs:
JQuery 1.6 ou inférieur
JQuery 1.6 ou supérieur
Ou, si vous n'allez pas l'utiliser c'est à dire à tous les