web-dev-qa-db-ja.com

文字列で始まるすべてのIDを選択するjQueryまたはCSSセレクター

idが「player_」で始まるすべての要素を選択するにはどうすればよいですか?

このような複数の要素があります。

<div id="player_290x3dfda">text</div>

すべてのidには一意のスタンプがあります。 jQueryまたは純粋なCSSを使用して、これらすべての要素を選択するにはどうすればよいですか?

148
matt

通常、IDセレクター#を使用してIDを選択しますが、より複雑な一致には、attribute-starts-withセレクターを使用できます( jQuery selector またはCSS3セレクターとして):

div[id^="player_"]

ただし、そのHTMLを変更できる場合は、プレーヤーdivsにクラスを追加してから、そのクラスをターゲットにする必要があります。属性セレクターはクラスセレクターと同じ特異性を共有するため、いずれにしてもIDセレクターが提供する追加の特異性は失われます。さらに、クラスを使用するだけで物事がずっと簡単になります。

248
BoltClock

これを試して:

$('div[id^="player_"]')
82
Prakash

*http://api.jquery.com/category/selectors/ )のようなメタ文字を使用できます。したがって、$('#player_*')を使用できると思います。

あなたの場合、「属性で始まる」セレクターを試すこともできます: http://api.jquery.com/attribute-starts-with-selector/$('div[id^="player_"]')

24
Timon
$('div[id ^= "player_"]');

これは私にとってはうまくいきました。「players_」キーワードで始まるすべてのDivを選択して表示します。

3
Riddhi