AJAX request - Hvordan skal det gøres?

Tags:    javascript

Hej udviklere!

På min side bruger jeg AJAX til at requeste PHP funtioner fra min server. Dette gør jeg ved hjælp af en kode fundet på w3schools.com.

Koden ser sådan ud:

Fold kodeboks ind/udKode 


Men når jeg udfører denne function "fryser" siden når den requester.

Det er et irriterende problem som får en til at føle at siden hele tiden går istå og ikke kan følge med.

Jeg har set eksempler inde på nettet hvor mens requesten bliver foretaget, bliver der vist en slags preloader. Dette medfører også at siden ikke "fryser".

Spørgsmålet er: Er det en uautoriseret kode jeg bruger, er det onreadystate funktionen som mangler (som jeg ikke ved hvordan skal bruges)Eller burde jeg benytte mig af et såkald AJAX framework som indeholder færdige funtioner til AJAX requester og hvilken?

Tak på forhånd
Mathias :D



Du skal bruge en onreadystatechange og i xmlhttp.open("GET",url,false) skal du ændre false til true.

Se:
https://developer.mozilla.org/En/Using_XMLHttpRequest#Example.3a_Asynchronous_request



Det er 100000 gange (cirka) nemmere at bruge en javascript framework til at lave AJAX-snask med. Hvis du f.eks. vil loade siden "hej.php?p=test" ind i en div med id'et "ajax", med jQuery (www.jquery.com), ville koden se sådan her.

Fold kodeboks ind/udKode 






Okay tak skal i have alle sammen!

Til andre der sidder med samme prblem, brug denne AJAX request function:

Fold kodeboks ind/udKode 


1) Udskift requester.php til den side du ønsker
2) Uskift "element" i getElementByID til id'et på det element du ønsker eller slet linjen hvis du kun øsnker at udfører php i funktionen og ikke bruge teksten deri.



Indlæg senest redigeret d. 25.08.2009 19:10 af Bruger #15155
t