Avatar billede themapplz Nybegynder
14. september 2011 - 15:26 Der er 5 kommentarer

jQuery get/ajax renderer dobbelt op for hvert request

Hej jeg har et simpelt script, der henter en linje data for derefter at prepend'e det til en liste -
Hvorfor rendeerer den dobbelt for hvert request?

[code]
$(function() {
    var latest;
            function populate(){
                $.get('lib/log.php?action=update&latest='+latest, function(data) {
                        if(data.id!=latest){
                            latest = data.id;
                            $(data.news).hide().prependTo('#news').slideDown("slow");
                        }
                    },"json")
                setInterval(populate,2000);
            };
populate();
})
[/code]


PF tak
Andreas
Avatar billede lone_a_p Praktikant
14. september 2011 - 18:13 #1
Jeg havde samme problem med dobbeltkald for noget tid siden og var overbevist om, at jeg ikke kaldte funktionen 2 gange.
Fandt dog ud af, at det gjorde jeg alligevel :-/

Er du sikker på, at det ikke er problemet?
Avatar billede themapplz Nybegynder
14. september 2011 - 20:08 #2
Hey

Altså jeg kalder populate() når DOM er loadetog den gentager så sig selv. Jeg er ikke helt sikker på hvor det er, den skulle kaldes 2 gange - og hvor.
Kan du gennemskue hvad jeg overser?
Avatar billede olebole Juniormester
14. september 2011 - 23:46 #3
<ole>

alert er et dejligt værktøj ... brug det!  *o)

/mvh
</bole>
Avatar billede themapplz Nybegynder
13. november 2011 - 00:35 #4
Svaret
Avatar billede olebole Juniormester
13. november 2011 - 14:47 #5
Fandt du fejlen?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester