jQuery montrant div et de Disparaître ensuite
Je m'excuse à l'avance si c'est une simple question, j'ai ce code javascript:
$(document).ready(function() {
$("#results").hide();
var html = $.ajax({ url: "ajax.php?db_list=get", async: false}).responseText;
$("#submit").click(function () {
$("#results").show();
});
});
J'ai un bouton qui ressemble à ceci:
<fieldset class="action">
<button name="submit" id="submit">Submit</button>
</fieldset>
Quand je clique sur le bouton "Soumettre" j'ai voulu montrer les résultats de la div et ont-il rester là, mais dans Chrome, il apparaît puis disparaît immédiatement, est-ce à cause de la masquer() de la fonction en haut de mon document prêt?
Merci!
OriginalL'auteur Doug Molineux | 2010-12-31
Vous devez vous connecter pour publier un commentaire.
Probablement. Je devine que la page est rafraîchissant. Si vous ne voulez pas cela, utilisez
return false;
dans le gestionnaire.ou
événement.preventDefault()
.Merci, return false a fait le tour pour moi (ma div ne montrent très rapidement, puis se cacher...j'ai été en utilisant toggle()). Pourquoi est-ce et pourquoi ne return false résoudre ce problème?
OriginalL'auteur user113716
Avoir vos résultats initialement configurés pour être caché via CSS
Ne savez pas pourquoi vous êtes en sautant autour de la façon dont vous devriez utiliser $.ajax. Utiliser $.si c'est une requête GET... se Lier avec .vivre à cause de son mieux :). Laisser async parce que vous ne voulez pas que votre serveur suspendu en cas d'une erreur...
.live()
doit être utilisé. Pour un seul conducteur, sur un seul élément qui est disponible sur le chargement de la page, vous devez lier directement.la façon dont j'ai lu la question, je pensais qu'il était en train de charger ce contenu sur une autre page via ajax, dans ce cas .vivre est nécessaire
Ah, je vois maintenant. Personnellement, j'ai toujours ne pas utiliser de
live()
dans cette situation, mais ce serait une autre approche. Votre réponse plus de sens pour moi maintenant. :o)OriginalL'auteur sethvargo
Au lieu de soumettre, utilisez ce code
Maintenant, vous n'avez pas à
return false;
ou
de l'événement.preventDefault(); dans l'option javascript de votre
<input type="button">
"a été remplacée en HTML5 par le<button>
élément." -SOCIÉTÉOriginalL'auteur Nitin Hurkadli