30. august 2007 - 16:50
Der er
8 kommentarer og 1 løsning
DOM i FF ikke i IE ?
<table cellpadding="2" cellspacing="0" id="callcenterdata"> </table> <script type="text/javascript"> function generateCallcenter(){ var topTr; topTr = document.createElement("tr"); var td1; td1 = document.createElement("td"); td1.className = 'show_td'; td1.width = "100"; var td1text; td1text = document.createTextNode("Nummer"); td1.appendChild(td1text); topTr.appendChild(td1); var td2; td2 = document.createElement("td"); td2.className = 'show_td'; td2.width = "150"; var td2text; td2text = document.createTextNode("Navn"); td2.appendChild(td2text); topTr.appendChild(td2); var td3; td3 = document.createElement("td"); td3.className = 'show_td'; td3.width = "100"; var td3text; td3text = document.createTextNode("E-mail"); td3.appendChild(td3text); topTr.appendChild(td3); document.getElementById("callcenterdata").appendChild(topTr); } generateCallcenter(); </script>
Annonceindlæg fra DE-CIX
Edge computing: behandling ved kilden
Edge computing revolutionerer den måde, data behandles på, ved at bringe kapacitet og ydeevne tættere på dér, hvor der er behov for det.
15. april 2025
30. august 2007 - 17:52
#1
Ok?
30. august 2007 - 18:04
#2
Hehe..,! Sorry,. Teksten manglede li.. Koden virker i FF men ikke i IE .. Kan nogen se hvad grunden til dette er?
30. august 2007 - 18:39
#3
<ole> Et table-element kan ikke have tr-elementer som børn. tr-elementer skal appendes til et thead-, tbody- eller tfoot-element. Selvom du sjusker i din daglige kode, indskriver browseren altid et tbody-element, hvis det er udeladt ;o) /mvh </bole>
30. august 2007 - 18:45
#4
- og så ville jeg bytte lidt om på rækkefølgen og brugt styles i stedet for HTML-attributter til cellernes bredder: <table cellpadding="2" cellspacing="0"> <tbody id="callcenterdata"></tbody> </table> <script type="text/javascript"> function generateCallcenter(){ var topTr; topTr = document.createElement("tr"); document.getElementById("callcenterdata").appendChild(topTr); var td1; td1 = document.createElement("td"); topTr.appendChild(td1); td1.className = 'show_td'; td1.style.width = "100px"; var td1text; td1text = document.createTextNode("Nummer"); td1.appendChild(td1text); var td2; td2 = document.createElement("td"); topTr.appendChild(td2); td2.className = 'show_td'; td2.style.width = "150px"; var td2text; td2text = document.createTextNode("Navn"); td2.appendChild(td2text); var td3; td3 = document.createElement("td"); topTr.appendChild(td3); td3.className = 'show_td'; td3.style.width = "100px"; var td3text; td3text = document.createTextNode("E-mail"); td3.appendChild(td3text); } generateCallcenter(); </script>
31. august 2007 - 09:03
#5
Perfekt... Du for sej :D.. Du vi er igang, kan du så fortælle mig hvorfor dette ikke virker i IE, men virker fint i FF -> topTr.setAttribute("onclick","changeCallcenter(\"" + data[index].id + "\")");
31. august 2007 - 14:45
#6
Du kan ikke bruge setAttribute til event-handlers. Brug attachEvent i IE og addEventListener i FF: if (topTr.addEventListener) topTr.addEventListener("click", function(){changeCallcenter(data[index].id)}, false); else if (topTr.attachEvent) topTr.attachEvent("onclick", function(){changeCallcenter(data[index].id)}); else topTr.onclick = function(){changeCallcenter(data[index].id)};
31. august 2007 - 14:46
#7
- og addEventListener er i denne forbindelse den standardiserede, valide metode :)
05. september 2007 - 14:25
#8
Ok, det ka jeg ikk helt få til at virke.. .. :/ Jeg laver et loop.. Hvordan laver jeg dette, så den ikke ændre funktionen hver gang loopet køres igennem? :) På forhånd tak for hjælpen. uddrag for(index in data){ var topTr; topTr = document.createElement("tr"); topTr.style.backgroundColor = bg; topTr.style.cursor = 'pointer'; topTr.id = 'show' + data[index].id; if (topTr.addEventListener) topTr.addEventListener("click", function(){changeCallcenter(data[index].id)}, false); else if (topTr.attachEvent) topTr.attachEvent("onclick", function(){changeCallcenter(data[index].id)}); else topTr.onclick = function(){changeCallcenter(data[index].id)}; document.getElementById("callcenterdata").appendChild(topTr); }
06. september 2007 - 08:39
#9
Prøver li at åbne en ny spm med problemet.. men tak for hjælpen!
Vi tilbyder markedets bedste kurser inden for webudvikling