Frage

HTML ..

<div class="row">
   <div>
      <b>Title A</b> <a href="#">Link 1</a> <a href="#">Link 2</a>
   </div>
   Content A
</div>
<div class="row">
   <div>
      <b>Title B</b> <a href="#">Link 1</a> <a href="#">Link 2</a>
   </div>
   Content B
</div>
<div class="row">
   <div>
      <b>Title C</b> <a href="#">Link 1</a> <a href="#">Link 2</a>
   </div>
   Content C
</div>

jQuery ..

Bisher meine JS fügt einen "Link 3" Link nach jedem "Link 2" ..

$("a:contains('Link 2')").each(function(){
   $(this).after(' <a href="#">Link 3</a>');
});

Für jedes Element in der Schleife, wie würde ich den Titel zugreifen.

$("a:contains('Link 2')").each(function(){
   // I need to find the title string for each row. So is there a way to find elements before the $(this) identifier?
   $(this).after(' <a href="#">Link 3</a>');
});
War es hilfreich?

Lösung

Sie können die vorherigen Geschwister erhalten, indem die Verwendung von .prev () -Methode . Sie können das tun, oder Sie können die Links .parent () , und dann .find () den ersten <b>-Tag.

<p>Something Here</p> <!-- This becomes red -->
<p class="pickme">Hello World</p>

$(document).ready(function(){
  $(".pickme").prev().css("color","red");
});

oder

<p>Something Here</p> <!-- this becomes green -->
<p class="pickme">Hello World</p>

$(document).ready(function(){
  $(".pickme").parent().find("p:first").css("color", "green");
});

Andere Tipps

Wenn Sie eine Klasse, wie „rowTitle“, um alle Ihre bold-Tags hinzufügen, die Ihre Titel Einwickeln, sollten Sie in der Lage zu tun:

$("a:contains('Link 2')").each(function(){
   $(this).parent().find(".rowTitle").html
});

Oder etwas ziemlich ähnlich. Die jQuery Docs ziemlich umfangreich sind, und eine Schnellsuche sollten Sie was zu finden, den Sie sind suchen.

Ich bin kein jQuery Experte, aber ich glaube, das ist ziemlich nah an zu arbeiten. Vielleicht hat jemand ein bisschen mehr in der Sache vertraut auf meiner Antwort erarbeiten konnte (wie ich nicht so gut lernen, etwas dagegen hätte).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top