lorenz: Gegenteil von removeChild()

Hallo,

ich habe eine Select-Box statisch im HTML-Code stehen. In einer Funktion wird dies mittels

  
 var knoten=document.getElementById(i).firstChild;  
 verschwunden = document.getElementById(i).removeChild(knoten);  

gelöscht.
Nun möchte ich das Element in einer anderen, später aufgerufenen Funktion, wieder darstellen. Wie mache ich das?

Die Select-Box hat die Attribute class, id und name.

MfG
Lorenz

  1. Hi Lorenz!

    removeChild entfernt (wie die Funktion schon sagt) diesen Knoten.

    Wieso verwendest du nicht:
    document.getElementById(i).style.display="none" ?
    Damit wird das Element nicht gelöscht, sondern nur nicht dargestellt.
    Die Umkehrung (erneute Darstellung) setzt du dann:
    document.getElementById(i).style.display="..."
    Näheres zu den Werten findest du hier:
    http://de.selfhtml.org/css/eigenschaften/positionierung.htm#display

    Grüsse,
    Richard

    1. @@ritschmanhard:

      Wieso verwendest du nicht:
      document.getElementById(i).style.display="none" ?

      Weil 'document.getElementById(i).firstChild.style.display = "none";' gemeint war. ;-)

      Die Umkehrung (erneute Darstellung) setzt du dann:
      document.getElementById(i).style.display="..."

      Da IEs mit etlichen Werten der 'display'-Eigenschaft nicht klarkommen, mag es ratsam sein, einfach mit 'document.getElementById(i).firstChild.style.display = "";' auf den Defaultwert zu setzen.

      Live long and prosper,
      Gunnar

      --
      „Das Internet ist ein großer Misthaufen, in dem man allerdings auch kleine Schätze und Perlen finden kann.“ (Joseph Weizenbaum)
  2. Hallo lorenz,

    Nun möchte ich das Element in einer anderen, später aufgerufenen Funktion, wieder darstellen. Wie mache ich das?

    Wenn du es woanders hinsetzen willst, nimm http://de.selfhtml.org/javascript/objekte/node.htm#append_child@title=appendchild

    Jonathan