2010-12-13 7 views
1

J'ai un "lien" vous appuyez sur, textfield apparaît (toggle()) avec un bouton soumettre. Lorsque vous soumettez, en cas de succès sur mon ajax je:jQuery: masquer et afficher

$('#RespondMsg' + id).hide(); 
$("#response" + id).fadeOut('slow'); 

Maintenant, le « lien » reste, si vous voulez le faire à nouveau. Mais depuis que j'ai ceci, hide() et fadeOut(), les champs ne seront plus affichés, comment puis-je résoudre ce problème?

J'ai essayé avec un délai d'attente

setTimeout(function(){ 
    $('#RespondMsg' + id).show(); 
}, 1000); 

Mais oui qui montre que le champ à nouveau après 1 seconde.

Je le veux cacher le succès, puis si vous appuyez sur le « lien », il doit montrer les champs à nouveau (#respondmsg, #response)

Ceci est mon « lien » à quoi il ressemble comme:

$('.reply').live('click', function() { 
    $('#replyWall'+$(this).attr('data-id')).toggle(); 
    document.getElementById('replyMsg'+$(this).attr('data-id')).focus(); 
}); 

Répondre

1
$('.reply').live('click', function() { 
     var id = $(this).attr('data-id'); 
     $('#replyWall'+id).toggle(); 
     $('#RespondMsg' + id).hide(); 
     $("#response" + id).show(); 
     $('replyMsg'+id).focus(); 
}); 
+0

ne marchait pas sur .. – Karem

+0

Comment ça? Erreur Javascript? Vous ne montrez pas l'élément que vous voulez montrer? –

+0

Maintenant, quand j'appuie sur le .reply les éléments ne montrent pas (RespondMsg) – Karem

Questions connexes