问题
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!
回答1:
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;
});
回答2:
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
来源:https://stackoverflow.com/questions/5878342/jquery-find-all-ids-that-begin-with-a-defined-string-and-end-in-a-number