Ik heb een probleem met javascript in Internet Explorer. In Firefox en Opera werkt het wel goed.
Ik heb een javascript dat een deel van de pagina opbouwt. Het bestaat uit een loopje door een array waar bestandsnamen van andere scripts in staan. De bedoeling is dat er een tabel ontstaat met in iedere cel een script. Bijvoorbeeld:
Die scripts doen voorlopig niets anders dan een aantal dingen weergeven met behulp van document.write. Onder Firefox en Opera krijg ik netjes een aantal cellen naast elkaar met de uitvoer van de verschillende scripts. Het probleem is dat Internet Explorer de uitvoer van de scripts onder elkaar zet.
Script voor opbouwen van pagina. Hij gaat door een loopje en doet voor ieder element:
Dat werkt dus niet onder IE. Wanneer ik het volgende doe:
wordt "tekst" wel netjes in cellen naast elkaar weergegeven, maar de uitvoer van de scripts blijft op dezelfde verkeerde manier weergegeven (onder elkaar).
Wanneer ik de code handmatig schrijf (dus <td>script 1</td> enz.), werkt het wel. Het javascriptje is nodig, omdat de scripts niet van te voren vaststaan.
Ik hoop dat het verhaal een beetje duidelijk is
en dat iemand weet waar het aan zou kunnen liggen.
Ik heb een javascript dat een deel van de pagina opbouwt. Het bestaat uit een loopje door een array waar bestandsnamen van andere scripts in staan. De bedoeling is dat er een tabel ontstaat met in iedere cel een script. Bijvoorbeeld:
HTML:
.1
| <td>script 1</td><td>script 2</td> |
Die scripts doen voorlopig niets anders dan een aantal dingen weergeven met behulp van document.write. Onder Firefox en Opera krijg ik netjes een aantal cellen naast elkaar met de uitvoer van de verschillende scripts. Het probleem is dat Internet Explorer de uitvoer van de scripts onder elkaar zet.
Script voor opbouwen van pagina. Hij gaat door een loopje en doet voor ieder element:
JavaScript:
1
2
3
| document.write("<td class=\"content\">"); document.write("<script src=\"http://localhost/js/"+js[i]+".js\" type=\"text/javascript\"></scr"+"ipt>"); document.write("</td>"); |
Dat werkt dus niet onder IE. Wanneer ik het volgende doe:
JavaScript:
1
2
3
| document.write("<td class=\"content\">"); document.write("tekst <script src=\"http://localhost/js/"+js[i]+".js\" type=\"text/javascript\"></scr"+"ipt>"); document.write("</td>"); |
wordt "tekst" wel netjes in cellen naast elkaar weergegeven, maar de uitvoer van de scripts blijft op dezelfde verkeerde manier weergegeven (onder elkaar).
Wanneer ik de code handmatig schrijf (dus <td>script 1</td> enz.), werkt het wel. Het javascriptje is nodig, omdat de scripts niet van te voren vaststaan.
Ik hoop dat het verhaal een beetje duidelijk is