Hey allemaal,
ik zit met een raar probleem: ik snap niet hoe het komt, en ik snap niet hoe ik t oplos:
Het probleem: ik ben bezig met een simpel AJAX-scriptje: zodra iemand wil chatten start er een functie die de naam via ajax in een database plaatst, en vervolgens een andere functie aanspreekt die elke 2 seconden kijkt of er een nieuw bericht is geplaatst:
Zodra de functie startChatten() aangeroepen wordt, verandert via php de pagina en komt de chatpagina tevoorschijn en kan men beginnen met chatten. Dit werkt allemaal prima, MITS ik de alert van regel 7 aanroep! Verander ik de inhoud van de alert (bv. alert("bla"); ), of haal ik de alert helemaal weg, dan werkt de chat opeens niet meer. Ik heb geprobeerd om de functie "onderhoudChat()" met een settimeout aan te roepen, zodat de nieuwe pagina eerst kan laden, maar ook dit werkt niet. Zonder "alert(poststr)" werkt het niet...
Ik snap niet wat de reden is waarom t opeens wel werkt als ik de variabele poststr alert. Kan iemand het me het uitleggen? Want dan kan ik op zoek naar een oplossing voor dit vreemde probleem...
ik zit met een raar probleem: ik snap niet hoe het komt, en ik snap niet hoe ik t oplos:
Het probleem: ik ben bezig met een simpel AJAX-scriptje: zodra iemand wil chatten start er een functie die de naam via ajax in een database plaatst, en vervolgens een andere functie aanspreekt die elke 2 seconden kijkt of er een nieuw bericht is geplaatst:
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| // Start met chatten function startChatten() { var poststr = "auteur=" + document.getElementById("auteur").value; // AJAX-call: plaatst o.a. de naam van de auteur in de database makePOSTRequest('./AJAX/startChat.php', poststr); alert(poststr); // Trigger de loop om de chat elke seconde te verversen onderhoudChat(); } // Check voor nieuwe berichten function onderhoudChat() { var poststr = "sessie=" + document.getElementById("sessie").value +"&auteur=" + document.getElementById("auteur").value; // AJAX-call om de chat bij te werken makePOSTRequest('./AJAX/refreshChat.php', poststr, 'onderhoud'); // Voer de functie over een seconde opnieuw uit setTimeout(function(){onderhoudChat()}, 1000); } |
Zodra de functie startChatten() aangeroepen wordt, verandert via php de pagina en komt de chatpagina tevoorschijn en kan men beginnen met chatten. Dit werkt allemaal prima, MITS ik de alert van regel 7 aanroep! Verander ik de inhoud van de alert (bv. alert("bla"); ), of haal ik de alert helemaal weg, dan werkt de chat opeens niet meer. Ik heb geprobeerd om de functie "onderhoudChat()" met een settimeout aan te roepen, zodat de nieuwe pagina eerst kan laden, maar ook dit werkt niet. Zonder "alert(poststr)" werkt het niet...
Ik snap niet wat de reden is waarom t opeens wel werkt als ik de variabele poststr alert. Kan iemand het me het uitleggen? Want dan kan ik op zoek naar een oplossing voor dit vreemde probleem...