は、私がHTMLに持っているもののサンプルです:jQueryのセレクタ
<span class="a">Test</span>
<div class="b">
<div id="x_ABC">ABC must NOT be hidden</div>
<div id="x_DEF">DEF must be hidden</div>
<div id="x_GHI">GHI must be hidden</div>
<div id="JKL">JKL must NOT be hidden</div>
</div>
私が欲しいのは、jQueryを使ってのすべてのdivを非表示にすることですクラス "b"を持つdiv内の "x"で始まり、クラス "a"を持つhtmlタグで始まるid。
私はこのコードを試してみました:
$('.a + div.b div[id^=x]:gt(0)').hide()
をしかし、それは私がやりたいことはありません。誰かがクラス "a"、 "b"、 "id^= x"だけを使ってセレクタを修正する方法を知っていますか?
ありがとうございました!属性セレクタで
まあ、と同じくらい簡単だと思う私がいることを書きました: '$(」 .a + div.b div [id^= "x"] ')。hide() '(これはすべての関係するdivを隠します)。それにもかかわらず、私は引用符を追加します... 私の正確な問題が見つかりました。私はサイトjQuery1.4.4を使用して変更し、あなたの例は、その古いバージョンでは動作しません。今更新する必要があります!ありがとうございました! – Guile
@Guile:?どういう意味ですか?今説明したセレクタには、値の周りに引用符があります。 –
さらに、.slice(1)のパフォーマンスチップをありがとう!これは素晴らしいものです! – Guile