0backslash0
Gebruiker
- Lid geworden
- 3 jul 2007
- Berichten
- 31
Een nogal lastig probleem (bug?) achtervolgt mij. Indien ik JavaScript gebruik om naar
bepaalde elementen inmijn documenten te verwijzen graak ik niet verder dan de body.
Het is te zeggen, de body tag lijkt volledig leeg te zijn (vanuit het DOM punt bekeken).
Ik stuite eerste op dit probleem wanneer ik alle tags uit een formulier (form tag) wou
retourneren.
Ten gevolge heb ik dan een controle geschreven, de code volgt:
test.html
Zoals verwacht, bij het uitvoeren van deze pagina blijkt het element HTML 2 childNodes heefd.
Indien de code wordt aangepast om de eerste child van HTML weer te geven:
blijkt dus dat zoals verwacht de eerste childNode HEAD is
Wanneer nu de code wordt aangepast om de tweede child van HTML weer te geven
is tabelleeg.
en ook referencies naar elke child or descendant van body resulteerd in een lege array of het volgende:
Notitie: ik gebruik ook firebug, en bij het inspecteren van de pagina geefd deze alles weer
zoals het moet zijn, ook de error console geefd geen fouten. Gebruik dus firefox
kan iemand mij uit dit probleem helpen?
bepaalde elementen inmijn documenten te verwijzen graak ik niet verder dan de body.
Het is te zeggen, de body tag lijkt volledig leeg te zijn (vanuit het DOM punt bekeken).
Ik stuite eerste op dit probleem wanneer ik alle tags uit een formulier (form tag) wou
retourneren.
Ten gevolge heb ik dan een controle geschreven, de code volgt:
test.html
HTML:
<html>
<head>
<title>Testpagina voor JavaScript</title>
<script type="text/javascript" language="JavaScript">
<!--
var DOM = new Array();
DOM = document.getElementsByTagName('html');
DOM = DOM[0].childNodes;
document.write('<table style=\"width: 100%\" cellpadding=\"2\" cellspacing=\"3\"\" border=\"1\">');
document.write('<thead>');
document.write('<th>Array</th>');
document.write('<th>Key</th>');
document.write('<th>Value</th>');
document.write('</thead>');
document.write('<tbody>');
for(key in DOM)
{
document.write('<tr>');
document.write('<td style=\"text-align: center\;padding: 3px\;width: 5px\">DOM</td><td style=\"padding: 3px\">' + key + '</td><td style=\"padding: 3px\">' + DOM[key] + '</td>');
document.write('</tr>');
}
document.write('</tbody>');
document.write('</table>');
//document.write(DOM);
//-->
</script>
</head>
<body>
<hr>
<form name="mainform">
<label for="field_1">some field:</label><input type="text" id="field_1" name="field_1" />
<input type="submit" />
</form>
</body>
</html>
Zoals verwacht, bij het uitvoeren van deze pagina blijkt het element HTML 2 childNodes heefd.
Indien de code wordt aangepast om de eerste child van HTML weer te geven:
Code:
DOM[0].childNodes[0]
blijkt dus dat zoals verwacht de eerste childNode HEAD is
Wanneer nu de code wordt aangepast om de tweede child van HTML weer te geven
Code:
DOM[0].childNodes[1]
en ook referencies naar elke child or descendant van body resulteerd in een lege array of het volgende:
HTML:
<table style="width: 100%" cellpadding="2" cellspacing="3" border="1">
<thead>
<th>Array</th>
<th>Key</th>
<th>Value</th>
</thead>
<tbody>
<tr>
<td style="padding: 3px; text-align: center; width: 5px;">DOM</td>
<td style="padding: 3px;">length</td><td style="padding: 3px;">0</td>
</tr>
<tr>
<td style="padding: 3px; text-align: center; width: 5px;">DOM</td>
<td style="padding: 3px;">item</td>
<td style="padding: 3px;">function item() { [native code] }</td>
</tr>
<tr>
<td style="padding: 3px; text-align: center; width: 5px;">DOM</td>
<td style="padding: 3px;">namedItem</td>
<td style="padding: 3px;">function namedItem() { [native code] }</td>
</tr>
</tbody>
</table>
Notitie: ik gebruik ook firebug, en bij het inspecteren van de pagina geefd deze alles weer
zoals het moet zijn, ook de error console geefd geen fouten. Gebruik dus firefox

kan iemand mij uit dit probleem helpen?
Laatst bewerkt: