I am trying to find a span element who has an id in a particular pattern. Its main use is to find certain elements rendered by an asp.net (aspx) page which is derived from a master page.
3 Answers
Building on the accepted answer:
It depends on what kind of pattern you're looking for. If your pattern is something like "MasterPageElement_CheckBox_4443", "MasterPageElement_CheckBox_4448", etc. then you could also use:
$("span[id^=MasterPageElement_CheckBox]")
There are 3 built-in attribute selectors for simple patterns:
$("span[id^=foo]")
That selector matches all spans that have an id
attribute and it starts with foo
(e.g. fooblah
)
$("span[id$=foo]")
That selector matches all spans that have an id
attribute and it ends with foo
(e.g. blahfoo
).
$("span[id*=foo]")
That selector matches all spans that have an id
attribute and it has foo
somewhere within in it (e.g. blahfooblah
).

- 31,832
- 25
- 83
- 114
-
Links: [*= pattern](https://api.jquery.com/attribute-contains-selector/), [$= pattern](https://api.jquery.com/attribute-ends-with-selector/) and [^= pattern](https://api.jquery.com/attribute-starts-with-selector/) – Francisco Quintero Feb 19 '19 at 00:50
I know this is an old post, but additional information can help future developers who stumble across this. :) To add on to what @cdmckay mentioned, you can combine the attribute selectors to achieve "begins with X and ends with Y".
$("input[id^=inp][id$=_AddItem]")
This will match id "inp1_AddItem", "inp2_AddItem", "inp3_AddItem", etc.

- 454
- 5
- 9