Pergunta

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 ..

Até agora o meu JS adiciona um link "Fazer a ligação 3" após cada "Link 2" ..

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

Para cada item no circuito como eu acessar o título.

$("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>');
});
Foi útil?

Solução

Você pode obter o irmão anterior usando a .prev () método . Você pode fazer isso, ou você pode obter os links .parent () , e depois .find () o primeiro tag <b>.

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

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

ou

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

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

Outras dicas

Se você adicionar uma classe, como "rowTitle" para todas as suas tags em negrito que estão envolvendo seus títulos, você deve ser capaz de fazer:

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

Ou algo bastante similar. A jQuery Docs são bastante abrangente, e uma rápida pesquisa deve ajudá-lo a encontrar o que você está procurando.

Eu não sou um especialista em jQuery, mas eu acredito que é bastante perto de trabalho. Talvez alguém um pouco mais versados ??no assunto poderia elaborar sobre a minha resposta (como eu não me importaria de aprender bem).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top