2011-07-06 44 views
0

我有以下類型jQuery的:〜=選擇:如何獲取*不*包含一個指定標籤

<input data-of-type="football baseball basketball"> 

的輸入字段中給出元素的元素。如果我想獲得其擁有的所有標籤「棒球」-的類型的數據,我會使用類似

$("[data-of-type~=baseball]") 

但是,我想要做的就是有數據的類型一組的所有元素,但數據的類型不包括棒球。總之,像

$("[data-of-type!~=baseball]") 

(它返回一個語法錯誤)

回答

1

關閉,但試試這個:

$('[data-of-type]').not("[data-of-type~=baseball]") 

或者

$('[data-of-type]').filter("[data-of-type!=baseball]") 

或者,如果你想:

$('[data-of-type][data-of-type!=baseball]') 

http://api.jquery.com/attribute-not-equal-selector/

+0

但是'baseball'只是一個子字符串... –

1

如果有另一種常見的類型,你可以這樣說:$("[data-of-type~='ball']").not("[data-of-type~=baseball]")

$("[data-of-type*='ball']").not("[data-of-type~=baseball]")

+0

或者只是'$(「[ data-of-type]「)'(但它也會選擇這些元素ttribute是空的)。 –

0

也許使用沒有選擇將幫助:

$("input:not[data-of-type~=baseball]") 
+0

'.not'比':not'更快 – qwertymk

相關問題