J'ai un bouton comme ci-dessous. J'ai une liste de boutons. Lorsque l'utilisateur clique dessus, j'exécute une fonction javascript et il effectue une requête ajax, si la réponse à la requête est réussie, alors je change l'attribut status de la balise button. Je le change de 1 à 2.Jquery sur hover changement de texte html
Lorsque l'attribut status = 1, je souhaite que l'utilisateur puisse voir du texte en survolant le bouton.
Lorsque l'attribut status = 2, je ne veux pas qu'il voit quoi que ce soit sur le bouton de vol stationnaire.
J'ai essayé comme ci-dessous, mais après le statut = 2, le texte du bouton fixe change en survol. Comment puis-je résoudre ce problème?
<button onclick="dosomething()" id="someid" status="1">name</button>
<script>
function dosomething(){
$.ajax({
type:"GET",
url:"somefile.php",
success : function(data) {
if (data == '200') {
$('#someid').attr('status', '2');
}
},
error : function() {
alert('error');
},
})
}
$(document).ready(function() {
updateHoverStates()
});
$(document).change(function() {
updateHoverStates()
});
function updateHoverStates() {
$('button[status=1]').hover(
function() {
$(this).text('You are hovering');
},
function() {
$(this).text('You are not hovering');
}
);
}
</script>
Vous devriez vraiment installerez votre gestionnaire de clic dans le javascript; De plus, tous vos jQuery doivent se trouver dans '$ (document) .ready (...)'. Ce code est un vrai gâchis. – Mathletics
Je pense qu'il vaut mieux utiliser la classe css au lieu de l'attribut 'status' pour garder votre html valide ... –