2012-02-15 15 views
-2

を含むli.page-item-1123要素を選択する必要があります。 もちろん、$('.current_page_item')で選択できます。しかし、私の状況では、私は他のクラスを含む要素(クラスを持つ)が必要です。jQuery:他のクラスを含むクラスを持つ要素を選択する方法

<ul id="nav"> 
<li class="page_item page-item-1121"> 
    <a href="#">About me</a> 
</li> 
<li class="page_item page-item-1123 current_page_item"> 
    <a href="#">Photography</a> 
</li> 
<li class="page_item page-item-1125"> 
    <a href="#">Graphic design</a> 
</li> 
<li class="page_item page-item-1127"> 
    <a href="#">Contact</a> 
</li> 
</ul> 
+0

あなたはこれまでに何をしようとしたのですか? –

答えて

1

私が正しく理解すれば、両方のクラスを持つ要素が必要ですpage-item-1123 & current_page_itemあなたが行うことができます場合は

$(".page-item-1123.current_page_item")

+0

カルト、あなたのコードがdoteといっしょに短い方がcorectly :))) ありがとうございました – Vital

+0

@Vital Gladが助けてくれました。他のポスターがこの問題が解決されたことを他のポスターに知らせるようにマークしてください。 – Curt

2

このセレクタは、CSSと同じ方法で記述できます。クラス名の両方page_itemcurrent_page_itemを持つすべての要素を一致させるには、この使用:あなたはすでに要素を選択した場合

$('.page_item.current_page_item'); 

を、あなたはそれが同様に二クラス名と一致することを確認する必要があり、これを使用します。

$('.page_item').filter('.current_page_item'); 
0

はただ、他の回答を固定(彼らはドットを逃した)

$('.page_item.page-item-1123.current_page_item') 
+0

私はそれを実行して動作しました – deantoni

+0

いいえ、.page_itemは必要ではありません;) $( '。page-item-1123.current_page_item' '背景'、 '#000'); – Vital

0

あなたは番目のクラスとして一致する属性セレクタを使用することができます:

$('.page_item[class*=current_page_item]') 

これに代えて、要素の大きなセット:

$('.page_item').filter('.current_page_item') 

にロジックが似ている:

$('.page_item').each(function(){ 
    if($(this).hasClass('current_page_item')) 
     alert('match!'); 
}); 
+0

私はクラス.page-item-1123でのみ必要でした – Vital

関連する問題