[JS] onLoad werkt niet op written page...

Pagina: 1
Acties:

  • Victorio
  • Registratie: Januari 2001
  • Laatst online: 01-02-2024
Ja vage titel... O-)

Probleem is dit:

code:
1
2
3
4
function gaan() {
  document.write("<html><head><title>Blaat!</title>");
  document.write("<script src='extra.js'></script>\n");
  document.write("</head><body onLoad='doedit();'>Ja...</body></html>");


Deze functie gaan() roep ik aan op een pagina... die functie schrijft de html voor een hele nieuwe pagina... werkt prima... maar hij moet als hij klaar/geladen is de functie doedit() aanroepen uit extra.js.
Maar dit gebeurt niet!
Het gebeurt wel als ik de written pagina refresh... :? Waarom dan wel?

[ Voor 14% gewijzigd door Victorio op 26-02-2004 23:24 ]


Verwijderd

JavaScript:
1
2
3
4
function gaan() {
  document.write("<html><head><title>Blaat!</title>");
  document.write("<script src='extra.js'></script>\n");
  document.write("</head><body onLoad='doedit();'>Ja...</body></html>");


Volgens mij gaat het al niet goed met </script>(regel 3) je browser ziet dit als afsluiting van je script. Je kan beter &lt;/script schrijven.

Onderstaande werkt wel:
code:
1
2
3
4
5
6
7
<script>
    function doedit(){
        alert("hoi");
    }

  document.write("<body onLoad='doedit();'>Ja...</body>");
</script>

[ Voor 45% gewijzigd door Verwijderd op 27-02-2004 10:54 ]


  • kleautviool
  • Registratie: Mei 2003
  • Laatst online: 21-05 19:24
Je moet een backslash / escapen d8 ik. Zo dus

JavaScript:
1
document.write("<script src=\"extra.js\"><\/script>

Verwijderd

Het draait hier maar om één ding: document.close();. (Eigenlijk ook document.open();)
code:
1
2
3
4
5
6
7
function gaan() {
  document.open();
  document.write("<html><head><title>Blaat!</title>");
  document.write("<script src='extra.js'></script>\n");
  document.write("</head><body onLoad='doedit();'>Ja...</body></html>");
  document.close();
}

  • Victorio
  • Registratie: Januari 2001
  • Laatst online: 01-02-2024
Verwijderd schreef op 27 februari 2004 @ 13:57:
Het draait hier maar om één ding: document.close();. (Eigenlijk ook document.open();)
Geweldig! Dit was het dus! Het werkt! Thnx!

(Het lag niet aan die </script> want dat werkte al wel...)