2016-05-10 14 views
2

でないJqueryセレクタ要素の属性値(属性としてもIDを考慮)が文字列の配列内にないすべての要素を選択するにはどうすればよいですか?配列の長さは異なります。カスタムフィルタの目的のために属性IDが

+0

はxyの問題のようです – madalinivascu

+0

質問では、htmlと除外する値の配列と予想される結果を含めることができますか? – guest271314

答えて

4

使用filter()

var ids = ['a', 'b', 'f']; 
 

 
$('[id]').filter(function() { 
 
    return ids.indexOf(this.id) == -1; 
 
}).addClass('ele');
.ele { 
 
    color: red 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<span id="a">a</span><span id="c">c</span><span id="b">b</span><span id="d">d</span><span id="e">e</span><span id="f">f</span>

または特定のelments

var ids = ['a', 'b', 'f']; 
 

 
$('[id]').not('#' + ids.join(',#')).addClass('ele');
.ele { 
 
    color: red; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<span id="a">a</span><span id="c">c</span><span id="b">b</span><span id="d">d</span><span id="e">e</span><span id="f">f</span>
を回避するための not()を使用します

関連する問題