Dmitri S.
Dmitri S.

Reputation: 3438

JQuery, how to find list of div's with similar ID

I have a structure of html like this:

<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>

How do I get array of all the div's in JQuery with the triger ID in them (as you can see, they all have triger but different numbering eg. triger1, triger2 etc...)

Upvotes: 56

Views: 97075

Answers (4)

Tyler Carter
Tyler Carter

Reputation: 61567

Select all div elements whose id attribute contains the string triger:

$('div[id*="triger"]');

There's more about using *= in the jQuery documentation: Attribute Contains Selector [name*="value"]

Upvotes: 7

Yuval Karmi
Yuval Karmi

Reputation: 26713

you can actually use a regular expression in a selector to achieve exactly what you are looking for, as such:

$("div:regex(id, yourRegularExpression)");

(Note: this does require the regex-selector plugin)

Someone asked a similar question here.

You can read all about regular expressions here.

As others have pointed out, you can achieve the same result like this:

$("div[id^='partOfID']");

by using a simple jQuery selector. For more complex selections, though, you will need to use the regex plugin or do it manually, as noted in the linked question.

good luck!

Upvotes: 7

Andrew Moore
Andrew Moore

Reputation: 95334

You can use the following:

$("div[id^='triger']")

This will return all <div> with id starting (^=) with triger.

You can get more information about the various jQuery selectors in the jQuery docs:

API/Selectors

Upvotes: 116

Timothy S. Van Haren
Timothy S. Van Haren

Reputation: 8966

var trigerList = $("div[id^='triger']");

Upvotes: 3

Related Questions