2012-05-17 1 views
1

Je suis nouveau à ajax et je vais bien, mais le problème est que je reçois mon ajax envoyer des données au serveur, puis obtenir une base de données. Je voudrais à cacher la div d'erreur et faire l'alerte mais comme je lance le code l'alerte apparaît alors sapins de la zone est définie pour cacherAjax .. comment cacher div étant alerte

if(response.status == "SUCCESS"){ 
    $('#error').hide('fast'); 
    alert("Thanks for submitting. We will get back to you as asoon as possible.\n\n" + response.result); 
    } 

Répondre

3

Il semble que vous souhaitiez attendre la fin de l'animation avant d'afficher l'alerte.

Appel alert() dans le rappel hide():

$('#error').hide('fast', function() { alert(...); }); 
0

Ajouter un retard.

window.setTimeout(function() { alert('...') },100) 
1

Vous avez besoin d'une fonction de rappel, ici il va:

if(response.status == "SUCCESS"){ 
    $('#error').hide('fast',function() 
    { 
     alert("Thanks for submitting. We will get back to you as asoon as possible.\n\n" + response.result); 
    });   
    } 
0

Vous pouvez fournir un rappel à cacher(), ce qui se passe après l'animation est terminée:

$('#error').hide('fast', function() { 
    alert("Your alert string"); 
}); 

Lire la suite de Les documents officiels: http://api.jquery.com/hide/