0

いくつかの span タグを含む単純な HTML ページがあり、内容に応じてテキストの css スタイルを変更する必要があります。これは、ページの最初の出現では正常に機能しますが、2 番目の出現 (おそらくそれ以降のすべての出現) では機能しません。

$(function(){
  $("span#someId:contains('Text to change red')").css('color','red');
});

スパンは次のようになります。

<td><span id="someId">Text to change red</span></td>

この同じスパン (同じ ID を持つ) がページで繰り返される場合、最初に出現したものだけが赤く表示されます。すべてが赤くなるはずです。どうしたの?

4

1 に答える 1

3

ID ではなくクラスを使用します (ID は一意である必要があるため、ページごとに 1 つ):

<td><span class="myspan">Text to change red</span></td>

その後:

$("span.myspan:contains('Text to change red')").css('color','red');

または、スパン内のテキストのみが重要な部分である場合は、次のように単純化できます。

$("td span:contains('Text to change red')").css('color','red'); //If td is even needed!
于 2013-08-12T21:19:46.480 に答える