1

HTML で特定の要素を選択する際に問題が発生しています

クラス「event_rsvp」のリンクをクリックすると、次の li のスパンの HTML に「interested-status」のクラスを適用したいです。一方が他方に話しかけます。

<li rel="101590"><span class="rsvp-status">Are You Going? –&amp;nbsp;<a href="javascript:;" class="event_rsvp" rel="attending">RSVP</a></span></li>

<li rel="101590"><span class="interested-status"> <a href="javascript:;" class="event_likeit" rel="likeit"> Like It?</a></span></li>

重要 これはループであり、クリックされたものだけに影響を与える必要があることに言及することはおそらく重要です。

4

3 に答える 3

3

jQuery のsiblings()セレクターの処理を見ています。この特定のケースでは、次の一致する LI の兄弟を取得するためにnext()を使用する必要があります。

$('.rsvp_status').click(function() {
    // get the next LI with matching class
    $(this).parents().next('.interested-status');
});
于 2009-11-09T00:54:56.687 に答える
1

ナビゲートすればできます。リンクはリスト要素にあり、必要なスパンは次の子にあるため、シーケンスは親 -> 次 -> 子スパンです。

$("a.event_rsvp").click(function() {
  $(this).parent().next().children("span.interested-status").addClass('whatever");
  return false;
});
于 2009-11-09T00:41:29.790 に答える
0
$('a.event_rsvp').click(function() {
  $(this).parents('li:first').next().find('span:first').addClass('interested-status');
  return false;
});

親 LI インデックスを取得し、next() を 1 つのクエリの find() にマージすることで最適化できます。

于 2009-11-09T00:58:56.753 に答える