Ik ben bezig met een CMS met een editable document. De data komt uit een database. Ik ben niet erg sterk met deze techniek dus misschien is het programmeerwerk wat knullig, maar dit is wat ik heb gemaakt.
Omdat ik niet weet hoe ik vanuit een MySQL database rechtstreeks naar de innerText van het document kan schrijven heb ik het op de volgende manier opgelost:
1. Data wordt vanuit database als hidden formattribuut geschreven, nog voor de body tag.
2. Vervolgens wordt loadText weer uitgelezen door de functie load()
load() schrijft de tekst naar de innerText. Op zich werkt dit perfect, de tekst komt op het scherm in het document. Voor een controle had ik de alert(tekst); in de load functie staan, maar als ik die nu weghaal krijg ik de volgende foutmelding, linksonderin de explorer (geel bordje):
Fout: iView.document.body is leeg of geen object.
Misschien ten overvloede: De code werkt perfect, wanneer de alert erin staat.
Alvast bedankt voor de hulp...
Omdat ik niet weet hoe ik vanuit een MySQL database rechtstreeks naar de innerText van het document kan schrijven heb ik het op de volgende manier opgelost:
1. Data wordt vanuit database als hidden formattribuut geschreven, nog voor de body tag.
HTML:
1
2
3
| <form name="initForm"> <input type="hidden" name="loadText" value="<?print $tekst;?>"> </form> |
2. Vervolgens wordt loadText weer uitgelezen door de functie load()
HTML:
1
| <body onload="Init(), iView.focus(), load();" bgcolor="buttonface"> |
JavaScript:
1
2
3
4
5
| function load(){ tekst = initForm.loadText.value; alert(tekst); iView.document.body.innerText = tekst; } |
load() schrijft de tekst naar de innerText. Op zich werkt dit perfect, de tekst komt op het scherm in het document. Voor een controle had ik de alert(tekst); in de load functie staan, maar als ik die nu weghaal krijg ik de volgende foutmelding, linksonderin de explorer (geel bordje):
Fout: iView.document.body is leeg of geen object.
Misschien ten overvloede: De code werkt perfect, wanneer de alert erin staat.
Alvast bedankt voor de hulp...