appendChild ersetzen

jo_74

Grünschnabel
Hallo Zusammen,

ich habe folgenden Code:

HTML:

Code:
<input type="hidden" value="0" id="theValue" />
<p><a href="javascript:;" onclick="addElement();">Add Some Elements</a></p>
<div id="myDiv"> </div>

Java div via click einblenden:

Code:
function addElement() {
  var ni = document.getElementById('myDiv');
  var numi = document.getElementById('theValue');
  var num = (document.getElementById('theValue').value -1)+ 2;
  numi.value = num;
  var newdiv = document.createElement('div');
  var divIdName = 'my'+num+'Div';
  newdiv.setAttribute('id',divIdName);
  newdiv.innerHTML = 'Element Number '+num+' has been added! <a href=\'#\' onclick=\'removeElement('+divIdName+')\'>Remove the div "'+divIdName+'"</a>';
  ni.appendChild(newdiv);
}

und den Div ausblenden:

Code:
function removeElement(divNum) {
  var d = document.getElementById('myDiv');
  var olddiv = document.getElementById(divNum);
  d.removeChild(olddiv);
}

Soweit so gut, klappt auch wunderbar. Ich möchte alledings nicht das ein Child erzeugt wird, sonden ein Parent.
Also nicht
<div><div></div></div>
sondern
<div></div><div></div>

Ist das möglich oder verstehe ich da was falsch :)

Gruss,

Jo
 
Moin,

versuche es mal mit:

Code:
ni.parentNode.insertBefore(newdiv,ni.nextSibling);
(das sollte neue <div> nach dem #myDiv einhängen)

falls das nicht geht, poste mal bitte etwas mehr vom HTML drumherum.
 
Hi Sven.

klappt super, nur wie passe ich jetzt den
Code:
d.removeChild(olddiv);
an, so das ich den div via click auch wieder entfernen kann?

Danke für deine Hilfe!

Gruss,

Joern

##EDIT##

Habs schon gefunden:

Code:
d.parentNode.removeChild(olddiv);

wenn das Projekt abgeschlossen ist poste ich die URL..

Danke für deine Hilfe!


Joern
 
Zurück