web-dev-qa-db-fra.com

Faire mon fondu ajax mis à jour en fondu dans

J'ai ce code qui effectue un appel ajax et charge les résultats dans deux divs en double chaque fois qu'une liste déroulante est modifiée. Je veux que les résultats disparaissent dans la division, pour donner une indication plus évidente du fait que quelque chose a changé, car il est si simple qu'il est parfois difficile de remarquer le changement!

print("$('.ajaxdropdown').change(function(){


        $.ajax({
            type: "GET",
            url: "/includes/html/gsm-tariff.php",
            data: "c_name="+escape($(this).val()),
            success: function(html){
                $("#charges-gsm").html(html);
                                    //i want to fade result into these 2 divs...
                $("#charges-gsm-faq").html(html);
                $("#charges-gsm-prices").html(html);
            }
        });
    });");

J'ai essayé d'ajouter la méthode fadein et quelques autres choses, mais pas de joie.

27
Chris J Allen

Vous devrez le hide() avant de pouvoir utiliser fadeIn().

MISE À JOUR: Voici comment vous pouvez le faire en chaînant:

$("#charges-gsm-faq").hide().html(html).fadeIn();
$("#charges-gsm-prices").hide().html(html).fadeIn();
46
Adam Bellaire

Vous pouvez également le laisser visible et le rendre transparent, puis le fondre au maximum, en utilisant:

... .css({ opacity: 0 }).fadeTo("normal",1);
3
Adam Bellaire

Vous devrez le cacher () avant de pouvoir utiliser fadeIn ()

Ci-dessus a fonctionné pour moi

2
kingr

Cela fonctionne avec load (): 

$('.element').load('file.html').hide().fadeIn();
0
Brynner Ferreira

JQuery.ui propose un certain nombre de choses différentes avec les effets. Vous pouvez les trouver ici: http://docs.jquery.com/Effects

0
Malfist