Est-il possible d’utiliser jQuery pour sélectionner tous les liens <a>
dont href se termine par "ABC"?
Par exemple, si je veux trouver ce lien <a href="http://server/page.aspx?id=ABC">
$('a[href$="ABC"]')...
La documentation du sélecteur est disponible à l’adresse http://docs.jquery.com/Selectors
Pour les attributs:
= is exactly equal
!= is not equal
^= is starts with
$= is ends with
*= is contains
~= is contains Word
|= is starts with prefix (i.e., |= "prefix" matches "prefix-...")
$('a[href$="ABC"]:first').attr('title');
Cela renverra le titre du premier lien qui a une URL qui se termine par "ABC".
$("a[href*='id=ABC']").addClass('active_jquery_menu');
$("a[href*=ABC]").addClass('selected');
Juste au cas où vous ne voudriez pas importer une grande bibliothèque comme jQuery pour accomplir quelque chose d'aussi trivial, vous pouvez utiliser la méthode intégrée querySelectorAll
à la place. Presque toutes les chaînes de sélecteurs utilisées pour jQuery fonctionnent également avec les méthodes DOM:
const anchors = document.querySelectorAll('a[href$="ABC"]');
Ou, si vous savez qu'il n'y a qu'un seul élément correspondant:
const anchor = document.querySelector('a[href$="ABC"]');
Vous pouvez généralement omettre les guillemets autour de la valeur de l'attribut si la valeur recherchée est alphanumérique. Par exemple, ici, vous pouvez également utiliser
a[href$=ABC]
mais les citations sont plus souples et généralement plus fiables .