J'ai une structure html comme celle-ci:
<div id="triger1">some elements inside</div>
<div id="triger2">some elements inside</div>
<div id="triger3">some elements inside</div>
<div id="triger4">some elements inside</div>
Comment puis-je obtenir un tableau de tous les div dans JQuery avec l'ID de triger en eux (comme vous pouvez le voir, ils ont tous triger mais une numérotation différente, par exemple triger1, triger2 etc ...)
Merci d'avance
Vous pouvez utiliser les éléments suivants:
$("div[id^='triger']")
Cela renverra tous les <div>
avec id
commençant (^=
) avec triger
.
Vous pouvez obtenir plus d'informations sur les différents sélecteurs jQuery dans les documents jQuery:
vous pouvez réellement utiliser une expression régulière dans un sélecteur pour obtenir exactement ce que vous recherchez, en tant que tel:
$("div:regex(id, yourRegularExpression)");
(Remarque: cela nécessite le plugin regex-selector )
Quelqu'un a posé une question similaire ici .
Vous pouvez tout lire sur les expressions régulières ici .
Comme d'autres l'ont souligné, vous pouvez obtenir le même résultat comme ceci:
$("div[id^='partOfID']");
en utilisant un simple sélecteur jQuery. Pour des sélections plus complexes, cependant, vous devrez utiliser le plugin regex ou le faire manuellement, comme indiqué dans le question liée .
bonne chance!
Sélectionnez tous les éléments div
dont l'attribut id
contient la chaîne triger
:
$('div[id*="triger"]');
En savoir plus sur l'utilisation de *=
dans la documentation jQuery: l'attribut contient le sélecteur [name * = "value"]
var trigerList = $("div[id^='triger']");