02. december 2003 - 14:17
Der er
4 kommentarer og 1 løsning
innerHTML vil selv lave <table> og <tbody> tags!?
Hej, Jeg har set meget i de år jeg har lavet javascript, men den her tager kagen. Følg med: Jeg har følgende ASP side: <html> <head> <script type="text/javascript"> function writeAccessTable() { var accessTable = document.getElementById("AccessTable"); accessTable.innerHTML = ""; accessTable.innerHTML = '<table>'; alert(accessTable.innerHTML); } </script> </head> <body onload="writeAccessTable();"> <div id="AccessTable"></div> </body> </html> Og her kommer højdepunktet, den alerter: "<TABLE><TBODY></TBODY></TABLE>" Det kalder jeg service, men hvis jeg nu ikke vil have den til at indsætte alt muligt lort, hvad gør jeg så? Er det en ny feature i IE 6? Hvis jeg bruger: "accessTable.innerHTML = '<TABLE><TBODY></TBODY></TABLE>';" undlader den at lave nogle ændringer.. Nogen der har forklaringen på hvad der sker her? Mvh JGP
Annonceindlæg fra HP
02. december 2003 - 14:24
#1
-- for det første, fordi du bruger en browser, som ikke vil acceptere ufærdige tags, hvilket jo egentlig er meget rimeligt ... -- at IE så også mener at <table>s er ufærdige uden <tbody>s kan man jo så undre sig over (Mozilla svarede <table></rable> !-)
02. december 2003 - 14:34
#2
Tak for svaret. Men det er da noget nyt, at javascript er begyndt på at forsøge at rette op på ufærdige tags. Er det sket i IE 6? Lyder også hygsomt med mozilla der...
02. december 2003 - 15:11
#3
Den rabler heldigvis ikke så meget som jeg gør !-) -- og egentlig tror jeg slet ikke det er javascript, som gør det, men selve browserens objekt-model kræver, at tags som _skal_ lukkes bliver lukket, ellers er der jo rod i modellen, og så kan hverken den eller nogen anden finde rundt !-) -- og så må du vel hellere få et svar, velbekomme '-)
02. december 2003 - 15:17
#4
Jo Roenving, men i tilfælde hvor elementet i forvejen indeholder et slut tag, indsætter den alligevel de ekstra slut tag ved innerHTML'en. Nå, men de får ret og jeg koder som browseren gerne vil have det. Tak for svaret :-) Mvh JGP
02. december 2003 - 15:33
#5
-- tak for points ;~}
Vi tilbyder markedets bedste kurser inden for webudvikling