Ik ben bezig met een script met een thickbox, alleen ik krijg hem niet werkend. Ik heb het idee dat het eraan ligt dat js asynchroon werkt, eerst opdrachten doet die verder in de lijst staan en daarna verder gaat.
Ik heb bijvoorbeeld deze code:
vul ik geen password in of geen username, werkt alles perfect. Zoals je ziet heb ik al een tijd trigger toe gepast omdat hij anders de thickbox niet laad, als iemand daar een oplossing voor heeft zou dat perfect zijn. Heb al do{}while(!getElementById('TB_ajaxContent')); gebruikt, dit blijkt niet te werken alleen als ik nog geen tb_show heeft gedaan valt hij in de lus anders gaat hij gewoon door.
Maar als ik alles goed invul, dus password en username. Dan laad hij de thickbox heel langzaam en is hij onder het laden zichtbaar bezig met het maken van de andere iframe. Ook komt er alleen connecting voor, hij kan de commando's voor dat de iframe getekend wordt ook niet uitvoeren. (als ik connecting ervoor zet komt er helemaal niks te staan.
Hoe is dit op te lossen want kom er echt niet meer uit. Code normaal in php, en vind javascript dan ook een irritante taal om in te coderen (misschien omdat php meer toestaat en betere fouten weergeeft)
Ik heb bijvoorbeeld deze code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| function reqdat() {
var times;
var done;
var password;
done = 1;
times = 0;
tb_show("Status:",'empty.php?height=150&width=300','');
setTimeout("regdat2()",500);
}
function regdat2(){
document.getElementById('TB_ajaxContent').innerHTML = '<div align="center"><br /><br /><font size="5"><b id="message">Checking data!</b><br /><br /><input type="button" value="Close" /><br /><br /></font></div>'
if(!document.login.username.value){document.getElementById('message').innerHTML = 'Please enter your username!';}
else{
if(!document.login.password.value){document.getElementById('message').innerHTML = 'Please enter your password!';}
else{
document.getElementById('response').innerHTML = '<iframe id=response2 width=500 border=10 height=500 name=response2 src="communicate.php?username='+document.login.username.value+'&subject=login1" ></iframe>';
document.getElementById('message').innerHTML = 'Connecting!';}}} |
vul ik geen password in of geen username, werkt alles perfect. Zoals je ziet heb ik al een tijd trigger toe gepast omdat hij anders de thickbox niet laad, als iemand daar een oplossing voor heeft zou dat perfect zijn. Heb al do{}while(!getElementById('TB_ajaxContent')); gebruikt, dit blijkt niet te werken alleen als ik nog geen tb_show heeft gedaan valt hij in de lus anders gaat hij gewoon door.
Maar als ik alles goed invul, dus password en username. Dan laad hij de thickbox heel langzaam en is hij onder het laden zichtbaar bezig met het maken van de andere iframe. Ook komt er alleen connecting voor, hij kan de commando's voor dat de iframe getekend wordt ook niet uitvoeren. (als ik connecting ervoor zet komt er helemaal niks te staan.
Hoe is dit op te lossen want kom er echt niet meer uit. Code normaal in php, en vind javascript dan ook een irritante taal om in te coderen (misschien omdat php meer toestaat en betere fouten weergeeft)