J'essaie de trouver l'élément suivant avec une classe "d'erreur" et de frapper un mur.
En regardant la démo sur le site de jQuery, cela devrait fonctionner, mais ne fonctionne pas.
$("button[disabled]").next().text("this button is disabled");
<div>
<button disabled="disabled">First</button>
<span>no overwrite</span>
<span class="error"></span>
</div>
<div>
<button>Second</button>
<span></span>
</div>
<div>
<button disabled="disabled">Third</button>
<span>no overwrite</span>
<span class="error"></span>
</div>
J'essaie de trouver le span ou div ou quoi que ce soit après l'élément en question, comme le bouton ci-dessus.
de sorte que la ligne du bouton désactivé doit indiquer "Aucun écrasement de ce bouton n'est activé"
J'ai essayé
$("button[disabled]").next(".error").text("this button is disabled");
en vain.
Le problème est que vous utilisez la fonction de déplacement suivante plutôt que nextAll
$("button[disabled]").nextAll(".error").text("this button is disabled");
Lorsque vous utilisez next, il suffit de regarder l'élément "next" qui est
<span>no overwrite</span>
Ensuite, tout regarde tous les frères et sœurs qui sont à côté
Essaye ça:
$("button[disabled=disabled]").parent().find("span.error").text("this button is disabled");
j'espère que ça aide. Sinan.
next()
ne fonctionnera pas dans ce cas car il doit être un frère pour que cela fonctionne. Dans ce cas, vous avez besoin de:
$("button[disabled]").parent().nextAll()
.find("span.error:first").text("this button is disabled");