2012-06-23 57 views
6

是否有一種方法可以選擇帶有前綴「my」和後綴「0-9」的jQuery的所有id。 就像這些$(「#我的$ 1-4」)或只是可能與循環?jQuery選擇以word爲前綴並以計數器爲後綴的#id

<div id="my1"/> 
    <div id="my2"/> 
    <div id="my3"/> 
    <div id="my4"/> 
    <div id="my5"/> 
+0

你只需要** id **選擇器?爲什麼不使用類,名稱或數據選擇器。 最後一個請參閱http://stackoverflow.com/questions/2891452/jquery-data-selector 還有像這樣的屬性選擇器http://api.jquery.com/attribute-contains-prefix-selector/ – m03geek

回答

0

前綴部分是與attribute starts-with選擇容易實現的:

$("div[id^=my]"); 

但沒有選擇,這將允許你指定一個字符範圍,這樣的循環將不得不參與其中。我建議filter

$("div").filter(function() { 
    return /^my\d$/.test(this.id); 
}); 
0

假設你沒有數以百萬計的元素,與「我」,你可以做啓動:

$('[id^=my]').filter(function() { return this.id.matches(/\d/) && this.id.length == 3 }) 

這抓起有開頭的ID的所有要素「我的」,包含一些,只有3個字符長(所以「my54」不會匹配,但「my6」會)