9

私はこのようなものを持っています

<div id="div1">
   <span class="label">some text</span>
</div>
<div id="div2">
   <span class="label">some text</span>
</div>

idを介して、次にクラスを介して特定のスパンを選択したいと思います。#div1.labelまたはのようなものです#div2.spanが、この方法は機能しません。どうすればいいですか?

4

6 に答える 6

15

スペースを使用して、要素が子であることを示します。

$('#div1 .label');
$('#div2 span');
$('#div2 span.label');

#div1.labelIDdiv1とラベルのクラスを持つ要素を選択します。

于 2012-09-19T14:17:20.847 に答える
4

あなたができる

$("#div1 span.label")

使用する場合は、実際にはIDを持ち、クラスを持つ#div1.label要素を選択しています。div1label

于 2012-09-19T14:16:46.357 に答える
4

あなたはほとんどそれを持っています:

$("#div1 .label");

子孫セレクター

特定の祖先の子孫であるすべての要素を選択します。


より具体的にすることもできます。

$("#div1 > .label");

チャイルドセレクター

「親」で指定された要素の「子」で指定されたすべての直接子要素を選択します。

于 2012-09-19T14:16:51.430 に答える
1

とする必要が$('#div1 .label')あり$('#div2 span')ます。別の使用スペースが必要です

于 2012-09-19T14:17:28.920 に答える
1

#div1.labelまたは#div2.span

あなたはそれを間違って考えています、あなたがつかんでいるあなたのセレクターで、 div1のクラスを持つdiv1のID 。ラベル。(これは、HTMLの構造や、探しているものではありません)

これらは次のようになります。

$('#div1 .label');
$('#div2 .label');

間にあるスペースは、子要素を検索するという点でCSS構文と同じです。この場合、ラベルのクラスが必要です(さらに具体的にするためにspan.labelを挿入することもできます)。

より曖昧にし、すべてのdivをspan.labelでキャプチャしたい場合は、次のように実行できます。

$('div span.label'); // this would capture all of them
$('div[id^="div"] span.label'); // assuming they all start with the ID "div" then a #
于 2012-09-19T14:18:53.253 に答える
0

この単純なコードは私のために働いた$('#prettyId > label');

于 2020-07-02T09:48:21.237 に答える