2011-01-19 82 views
5

我想检索以特定ID开头的所有元素。短搜索后,将溶液似乎是:jQuery选择器中的通配符

$('*[id^="foo_"]') 

选择具有开始foo_的ID的所有元素。虽然这个选择语法是非常合乎逻辑的,我只是想知道是否有可能做到这一点更“速记”的方式,如:

$('#foo_*'); 

这没有工作,但是。是否支持像这样的wildcarting?

回答

4

据我所知,没有原生的方式来做到这一点。

但是,here是允许正则表达式用于选择器的过滤器。它应该适合你很好。

+0

正则表达式插件+1! – Marnix 2011-01-19 18:55:56

2

不,它不是。 *是一个universal selector意思是“任何元素”,而不是通用的通配符。 [id^="foo_"]*[id^="foo_"]是相同的(除了specificity注意事项)。

3

选择器语法与CSS几乎相同,其中*表示所有选择器,而不是通配符。在这种情况下没有必要指定*:[id^="foo_"]将以相同的方式起作用,但具有稍低的特异性。