40 votes

La meilleure façon d'obtenir le prochain frère ou la prochaine sœur dans jQuery

http://jsfiddle.net/mplungjan/H9Raz/

Après quelques tests avec Next('a') et autres, j'en ai finalement trouvé un qui a fonctionné. Je me demande juste pourquoi le prochain(« a ») ne l'a pas fait, ou le plus proche ou similaire. Existe-t-il des moyens plus propres d'accéder au href du lien après la case à cocher que je clique ?

$('form input:checkbox').click(function () {
 alert($(this).nextAll('a').attr("href"));
}); 
<form>
  <div>
    <input type="checkbox" name="checkThis" value="http://www.google.com" />Check here<br/>
    <a href="http://www.google.com">click here</a><br>   
    <input type="checkbox" name="checkThis" value="http://www.bing.com" />Check here<br/>
    <a href="http://www.bing.com">click here</a>       
  </div>
</form>

2voto

Vap0r Points 1143

La réponse de Frédéric est de loin la meilleure, mais j'ai pensé que je pourrais ajouter pour plus de clarté, que jquery a en fait une fonction de frères et sœurs.

0voto

Peter Graham Points 1062

Ou, vous pouvez simplement utiliser la fonction intégrée jQuery .siblings()

https://api.jquery.com/siblings/

0voto

Ricky Points 115

Le code ci-dessous a fonctionné pour moi

$ ( '#id ~ iframe') ;

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X