2010-01-29 3 views
0

EDIT:JQuery changer le texte sur le bouton cliquez sur "clignote" le texte

Merci les gars - parfait! J'aimerais pouvoir vérifier plus d'une réponse, puisque vous m'avez tous deux donné la bonne réponse. Réponse rapide!


J'ai la fonction jQuery suivante:

$(document).ready(function(){ 
     $('#login_btn').click(function(){ 
     $("#message").text("button was pushed"); 
    }); 
}); 

Il fonctionne - le texte du message change div lorsque je clique sur le bouton. Mais il revient instantanément à son état lorsqu'il est chargé. Donc, tout ce que vous voyez vraiment est un flash rapide, puis c'est parti.

J'utilise codeigniter. Le script ci-dessus est nommé "login_attempt" et se trouve dans un dossier nommé "javascript" à la racine de mon projet. C'est la seule chose dans ce fichier. Voici la source html sortie. Je suis en train d'apprendre jQuery, mais je pensais que lorsque le texte a été modifié, il devait rester modifié. Quelqu'un pourrait-il me conseiller sur la façon de s'assurer que le changement demeure?

Merci.

Répondre

1
$('#login_btn').click(function(){ 
    $("#message").text("button was pushed"); 
    return false; 
}); 

Retourne false pour empêcher le formulaire de soumettre.

1

Ce bouton est-il dans un formulaire? Si oui, je pense que vous soumettez le formulaire lorsque vous cliquez sur le bouton et que la page est ensuite rechargée. Il est probablement rechargement si rapide qu'il ressemble à un flash. L'ajout de retour false arrête fondamentalement la chaîne d'événements que le bouton aurait normalement démarré.

+2

'return false;' est la même chose que d'appeler 'e.preventDefault(); e.stopPropogation(); ' – munch

+2

sauf que si votre fonction contient des erreurs, le formulaire sera envoyé. Mettre e.preventDefault() au début de la fonction empêche cela (dans mon expérience). Pas que vous ayez des erreurs dans votre fonction, mais cela ajoute une assurance. – jessegavin

Questions connexes