2010-06-30 35 views
1

我有這樣的HTML:選擇指定的div值

<div id="main"><div id="mainly">11</div><div id="mainly">22</div></div> 

我想選擇與價值11.How的div來做到這一點? 我想:

$("<div id="mainly">11</div>") 

,但它沒有工作... 我沒有隻有兩個ID =「主要」的div。

+0

你是什麼意思的「選擇div」? – edanfalls 2010-06-30 10:32:03

+0

我這樣做。 類似的東西: $( 「#主要是」),每個(函數(){ \t如果($(本)的.text()== 11){ \t \t $(本)的.css( 「邊界」 ,「1px solid red」); \t} }); – lam3r4370 2010-06-30 10:33:40

+0

@edanfalls:儘管事實上ID已被濫用,但OP的確切含義是「編寫一個jquery選擇器來查找div」 – 2010-06-30 10:43:52

回答

2

我不只有兩個div id爲 「主要」

但你應該一個的div id爲 「主要」!

DOM標識符必須是唯一的,才能創建「格式正確的」和有效的標記。

因此,我們假設您使用classes而不是ids

$('.mainly:contains(11)').fadeOut('fast'); 
+0

+1,以便真正理解問題的核心(':contains')。請注意,包含的內容不會查找完全匹配,所以'2112'仍然會匹配。 – 2010-06-30 10:42:48

+0

@大衛:非常真實,但OP要求完全匹配,否則我會建議使用正則表達式的自定義選擇器:) – jAndy 2010-06-30 10:52:15

2

您不能有兩個或更多具有相同ID的div元素。這是無效的HTML和jQuery選擇器將無法正常工作。而不是ID爲所有元素使用通用類。