Der Martin: variable.document.getElementById

Beitrag lesen

Hallo,

ist es erlaubt document.getElementById innerhalb einer Variable anzuwenden?

nein, schon die Formulierung ist Unsinn.

var fxt_id = 'fxt_' + item.fxt;

var fxtcontainer = document.getElementById(fxt_id);
var infobox = fxtcontainer.document.getElementById('info');

  
Wenn du schon die Code-Auszeichnung des Forums nutzt, dann markiere Javascript-Code bitte auch als Javascript, nicht als HTML. Danke.  
  
Nach dem obigen Codeauszug ist fxtcontainer eine Referenz auf ein HTML-Elementobjekt innerhalb des Dokuments. Dieses Objekt hat aber keine Eigenschaft namens 'document'. Warum sollte es?  
  

> Wie kann ich sonst gezielt anhand einer ID innerhalb des fxtcontainers suchen?  
  
Das brauchst du nicht. Eine ID ist einzigartig im Dokument, kann also nur einmal vorkommen. Es ist daher nicht nötig, den Suchbereich einzuschränken.  
  

> document.getElementById funktioniert in diesem Fall nicht, weil sich diese ID mehrfach im Document befinden wird, aber nur einmal in dem div Container "fxtcontainer".  
  
Das ist ungültiges HTML. Vermeide das, oder lebe mit allen unvorhersehbaren Nebenwirkungen.  
  

> Ich weiß, dass macht man normalerweise nicht, aber in diesem Fall geht es nicht anders, da ich in eine html-Page mehrmals das gleiche Html in verschiedene div-Container reinlade.  
  
Dann lass das am besten. Das würde ja auch noch weitere Probleme nach sich ziehen - beispielsweise mehrere head- und body-Elemente im Dokument.  
Wenn du schon ein komplettes HTML-Dokument einbinden willst, nimm ein iframe-Element. Dann sind die Dokumente organisatorisch getrennt.  
  
Ciao,  
 Martin  

-- 
Die junge Ehefrau weint sich bei ihrer Mutter aus:  
Er hat gesagt, ich soll mich zum Teufel scheren! - Und da kommst du ausgerechnet zu mir?!  
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(