Juste un petit exemple:
<p>
<span class="example"></span>
<input type="text" name="e_name" id="e_id />
</p>
<script type="text/javascript">
$('input').click(function(){
$(this).parent().children('span').text('Suprise!');
}
</script>
Que puis-je utiliser à la place parent (). Children ()?
Je pense que c'est un morceau de code un peu inélégant. Est-ce que n'importe quelle fonction, c'est-à-dire: $ (this) .fun ('span'). Text ('just better'); ??
$(this).siblings('span').text('Suprise!');
$(this).siblings('span').text('Surprise!');
Serait l'équivalent sans parcourir le DOM puis redescendre (je veux dire, il le fait toujours, mais au moins vous ne le faites pas manuellement).
Un peu plus élégant est .prev()
$(this).prev('span').text('Surprise!');
vous pouvez en savoir plus ici: Précédent
modifier: lire le balisage à l'envers, prev est meilleur, pas suivant.
essaye ça:
$(this).prev('span').text('Surprise!');
$("span.example",$(this).parent()).text('Suprise!');