J’essaie de faire afficher du texte lorsqu’une entrée de texte est active, mais le plus proche (); la méthode ne semble pas fonctionner.
J’ai fait un JS Fiddle à regarder.
et voici le code aussi.
JS
$(document).ready(function(){ $('.validation-error').hide(); $('.name-input').on("focus", function(){ $(this).closest('.validation-error').show(); }); });
HTML
Toute aide serait appréciée.
.closest () trouve l’élément parent le plus proche, .validation-error
n’est pas un parent de l’élément name-input
. Vous avez besoin de l’élément .validation-error
qui tombe sous le même object tr
que l’élément input.
Vous avez besoin
$(this).closest('tr').find('.validation-error').show();
ou
$(this).closest('td').next().find('.validation-error').show();
Essayez ma version Demo Fiddle bien que la réponse d’Arun P. Johny soit bien meilleure ..
$(this).parent().siblings().find('.validation-error').show();