What is the simplest way to iterate through all select drop downs with ID's matching a pattern using jquery. for example:
<select id="begin_1_end">...</select>
<select id="begin_32_end">...</select>
<select id="begin_42_end">...</select>
<select id="dontgetme_2_end">...</select>
<select id="begin_12_dontgetme">...</select>
to iterate through the first 3 selects only.
Try this with attribute-starts-with-selector/
$('select[id^="begin"]').each(function () {
console.log(this.id);
});
or you could use attribute-ends-with-selector
$('select[id$="end"]').each(function () {
console.log(this.id);
});
Update
To select the first 3 you can use :lt(3)
like this
$('select[id^="begin"]:lt(3)').each(function () {
console.log(this.id);
});
DEMO
Update
To combine the selectors you can do this
$('select[id^="begin"][id$="end"]').each(function () {
console.log(this.id);
});
DEMO
If you want to select an element with id that starts with begin OR end you can do this using ,
to get two different selectors
$('select[id^="begin"],select[id$="end"]').each(function () {
// ^
console.log(this.id);
});
DEMO
use attribute starts with selector, then use .each() to iterate through them
$('select[id^=begin_]').each(function(){...})
Try using attribute starts with selector
$("select[id^='begin_'").each(function(){
//your stuff
})