Jeg tror, det må være således: ****************************** function vis(id,url){ var newElement=document.createElement("iframe"); newElement.setAttribute("src",url); newElement.setAttribute("class","logeventIframe"); newElement.setAttribute("className","logeventIframe"); newElement.style.cssText="width:100%;height:40px;scrolling:auto;border:0"; newElement.setAttribute("allowTransparency",true); newElement.appendChild(document.createTextNode("[Din browser understøtter ikke frames. Få dig en ny, eller ")); var newSubElement=document.createElement("a"); newSubElement.setAttribute("href",url); newSubElement.appendChild(document.createTextNode("klik her.")); newElement.appendChild(newSubElement); newElement.appendChild(document.createTextNode("]")); document.getElementById("detalje_iframe_"+id).appendChild(newElement); } ****************************** Der er flere linjer end med innerHTML, og det er derfor, mange ikke tør droppe innerHTML, men det er klart den mest korrekte måde at gøre det på, hvor man bygger koden op element for element.
Bemærk dog, at hvis du kører koden 2 gange, vil elementet også blive indsat 2 gange. Hvis den skal rydde div'en "detalje_iframe_"+id, skal der tilføjes en funktion til dette som køres inden indsættelse af DOM-koden.
Men hvis man ikke ved, om der kan blive overført hvad som helst som i dit eksempel, må det vel kunne løses med:
function vis(id,url){ if(typeof(id)!="string"||typeof(url)!="string")return false; var newElement=document.createElement("iframe"); newElement.setAttribute("src",url); newElement.setAttribute("class","logeventIframe"); newElement.setAttribute("className","logeventIframe"); newElement.style.cssText="width:100%;height:40px;scrolling:auto;border:0"; newElement.setAttribute("allowTransparency",true); newElement.appendChild(document.createTextNode("[Din browser understøtter ikke frames. Få dig en ny, eller ")); var newSubElement=document.createElement("a"); newSubElement.setAttribute("href",url); newSubElement.appendChild(document.createTextNode("klik her.")); newElement.appendChild(newSubElement); newElement.appendChild(document.createTextNode("]")); document.getElementById("detalje_iframe_"+id).appendChild(newElement); }
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.