Maison  >  Article  >  interface Web  >  Existe-t-il une méthode générique pour la correspondance des noms d'éléments dans \'querySelector()\' et \'querySelectorAll()\' de JavaScript ?

Existe-t-il une méthode générique pour la correspondance des noms d'éléments dans \'querySelector()\' et \'querySelectorAll()\' de JavaScript ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-23 15:16:02202parcourir

Is There a Wildcard Method for Element Name Matching in JavaScript's

Nom de l'élément générique correspondant à "querySelector()" et "querySelectorAll()" en JavaScript

Problème :

Interroger un document XML avec des éléments ayant des chaînes spécifiques incorporées dans leurs noms peut s'avérer difficile. Bien que CSS prenne en charge les caractères génériques pour les requêtes d'attributs, la même fonctionnalité semble manquer pour les noms d'éléments.

Solution :

Malheureusement, il n'existe aucun moyen simple de faire correspondre un élément générique. noms utilisant "querySelector()" ou "querySelectorAll()". Cependant, il existe des approches alternatives :

  • Correspondance d'attributs : CSS fournit des caractères génériques pour les valeurs d'attribut. Pour faire correspondre des éléments avec une chaîne particulière dans leur nom, recherchez la présence de cette chaîne dans l'un de leurs attributs en utilisant la syntaxe suivante :

    • [attribute^='value'] correspond aux éléments dont l'attribut commence avec « valeur ».
    • [attribute$='value'] correspond aux éléments dont l'attribut se termine par « valeur ».
    • [attribute*='value'] correspond aux éléments dont l'attribut contient « valeur ». '.
  • Attribut de nom : Si vous souhaitez faire correspondre l'attribut 'name', remplacez simplement 'id' par 'name' dans les expressions ci-dessus.

Exemple :

Pour rechercher tous les éléments avec la chaîne "name" dans leur attribut 'name', vous pouvez utiliser :

<code class="javascript">const elementsWithName = document.querySelectorAll('[name*="name"]');</code>

Remarque :

Si vous recherchez une correspondance de caractères génériques pour le nom de la balise d'élément lui-même, il n'existe actuellement aucune solution directe utilisant "querySelector()" ou "querySelectorAll()".

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn