Element or class LIKE selector for jQuery?

David Andersson picture David Andersson · Feb 8, 2010 · Viewed 82.3k times · Source

For whatever reason I have these classes called .main_sub1, .main_sub2 etc. Never mind why I can't have .main .sub.

Is there a way with jQuery, sort of in the way it is possible to do with attributes, to get the classes containing main?

Answer

Tatu Ulmanen picture Tatu Ulmanen · Feb 8, 2010

Using $("[class^=main]") will select all elements whose classname starts with 'main'. Take a look at jQuery docs about selectors, there are a lot of other variations you can use, for example:

  • [class*=main] will select elements whose classname contains 'main'
  • [class~=main] will select elements whose classname has the word 'main' (delimited with spaces)
  • [class$=main] will select elements whose classname ends in 'main'