03. juni 2007 - 09:52Der er
14 kommentarer og 1 løsning
innerHTML virker ikke
Jeg har denne javascript funktion:
function anslag(text) { var rest_len=400-text.value.length; var rest_text = 'Resterende antal anslag: '+rest_len; window.document.getElemenById('rest').innerHTML= rest_text; return false ; }
function anslag(text) { var rest_len=400-text.value.length; var rest_text = 'Resterende antal anslag: '+rest_len; var el=window.document.getElementById('rest'); el.innerHTML= rest_text; return(fase) ; }
Jeg aner ikke, hvorfor man ikke kan referere direkte til den, men der skal åbenbart en indirekte reference til, før det virker...
Men Erik, du får halvdelen, da den jo nok ikke havde virket med stavefejlen alligevel :)
Man kan så tilføje, at det er et under, at det virker ens i alle browsere, da innerHTML aldrig har været en del af en standard, og faktisk burde man:
function anslag(text){ var rest_len=400-text.value.length; var rest_text = 'Resterende antal anslag: '+rest_len; window.document.getElemenById('rest').firstChild.nodeValue = rest_text; return false ; }
Erik: Virkelig mærkeligt! Men den vil altså ikke i min... Til gengæld virker den som skrevet ovenfor. Vil du lige lægge et svar? roenving: Ja, det er også en mulighed, men nu har jeg fået den til at virke, så...
Jeg har lige afprøvet den, roenving, og den virker faktisk heller ikke. Jeg ved ikke, hvad der gør mit dokument så specielt (kan være DTD'en), men jeg holder mig til den løsning, der virker :)
Hrm, havde lige glemt tavetossen i .getElementById samt din disabled i html-koden i spørgsmålet, så den virker som forventet ganske glimrende !o]
-- og da du faktisk skriver xhtml-agtig kode vil det vel være vanvittigt at skrive noget kode, der notorisk ikke vil virke (faktisk vil den få en xml-baseret fortolker til at gå ned med et hult drøn !-), hvis browseren faktisk tog det alvorligt ?-)
hehe, sådan en lille forglemmelse kan forfølge en i lang tid (der er heller ikke nogen, der har påpeget 'return fase' ovenfor :D
Anyway, nu virker den både i "din" og "min" version. Da jeg ved, hvem og hvordan den skal bruges, har det ingen praktisk betydning, hvilken det bliver. Men tak for ideerne, som jeg efterlyste :)
Jo, det har da pokkers til betydning, om du bruger DOM eller innerHTML!
innerHTML har aldrig været valid i nogen somhelst standard - og bliver det med garanti heller aldrig. Den er i visse browsere (Firefox) upålidelig - og man skyder ofte sig selv i foden, når man bruger den (den overskriver et dokument-fragment og bryder derfor alle programmatiske referencer i fragmentet).
innerHTML var en udmærket ting i forrige årtusinde - men i dette har vi fået langt bedre metoder til manipulation af dokumentets indhold
/mvh </bole>
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.