Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

jQuery find all id's that begin with a defined string and end in a number

I would like to do something like this:

jqueryElement.find('divIdWithIterator**').each(...);

where 'divIdWithIterator**' matches all elements with ids that start with 'divIdWithIterator' and end in a number, such as:

divIdWithIterator1, divIdWithIterator2, divIdWithIterator26

What is a good way to do this in jQuery?

Thanks!

like image 575
Chris Dutrow Avatar asked Feb 24 '23 08:02

Chris Dutrow


2 Answers

Unfortunately, there is no regular expression selector.

You could use the attribute-starts-with selector, then filter the results and check for numeric endings using search()

Eg

var divs = jqueryElement.find('[id^="divIdWithIterator"]').filter(function(index){
    return this.id.search(/\d$/) != -1;
});
like image 84
Phil Avatar answered Feb 26 '23 20:02

Phil


Following: http://api.jquery.com/attribute-starts-with-selector/

To find the elements whose id begin with "divIdWithIterator":

$('input[id^="divIdWithIterator"]')

And then avoid to have other elements that begin with "divIdWithIterator" and you don't want to select

like image 35
ariel Avatar answered Feb 26 '23 22:02

ariel