Lorsque j'essaie d'utiliser la méthode jQuery next()
, cela ne fonctionne pas avec live()
.jQuery next() ne fonctionne pas avec live()
Tout d'abord, voici mon code:
$(".toggle_button").live('click', function() {
$(this).html($(this).html() == '-' ? '+' : '-');
$(this).next(".info_section").toggle(400);
});
Voici le HTML
<div class='section_toggle_container'>
<div class='toggle_button'>-</div>
<strong>Driver Information:</strong>
</div>
<div class='info_section'>
info here
</div>
le problème se situerait peut-être dans le fait que .toggle_button
est imbriquée, ce qui rend .info_section
injoignable?
La deuxième ligne fonctionne très bien, car elle modifie l'élément en raison de l'événement live()
. La troisième ligne, cependant, est où le problème est à. C'est parce qu'il utilise next()
.
Quelqu'un peut-il m'aider avec une solution pour mon problème next()
?
Vous aurez besoin de montrer le HTML cela s'applique à je pense. Est-il possible qu'il n'y ait pas de ".info_section" après l'élément '.toggle_button'? Ou détruisez-vous 'this' avec l'appel' .html() 'dans la ligne ci-dessus? Essayez d'utiliser '.text()' à la place. – Orbling
pouvons-nous vous voir code html? – amosrivera
Quel est exactement le problème? ** Comment votre HTML ressemble-t-il?** 'next()' ne retournera qu'un élément ** si et seulement si ** le prochain frère de 'this' a la classe' info_section'. Il ne renvoie pas ** ** le frère suivant avec la classe 'info_section'. –