• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[GELÖST] iframe mit Javascript nachladen

Pansen64

New member
Hallo,

ich möchte in einer Webseite einen iframe einbinden. Dabei soll entweder das eine oder das andere iframe geladen werden. Welches, soll mittels Javascript entschieden werden, da der notwendige Parameter (im Beispiel "x") nur clientseitig ermittelt werden kann. Mittels "x" soll dann in Javascript in einem weiteren Request das eine oder andere iframe nachgeladen werden.

Von der Struktur her sähe das so aus:

HTML:
<script type="text/javascript">
// <![CDATA[

   // Ermittlung von x

   if(x==0) 
   {  
    einbinden von frame 1 etwa: <iframe src="http://meineseite/frame1.php?area=1" style="border:0px #FFFFFF none;" name="fr1" scrolling="no" frameborder="0" align=aus marginheight="0px" marginwidth="0px" height="90" width="500"></iframe>
   }
  else
   {  
    einbinden von frame 2 etwa: <iframe src="http://meineseite/frame2.php?area=2" style="border:0px #FFFFFF none;" name="fr2" scrolling="no" frameborder="0" align=aus marginheight="0px" marginwidth="0px" height="90" width="500"></iframe>
   }
// ]]>
</script>

Geht das irgendwie?
Habe in Netz nichts dazu gefunden. Bin in JS nicht so bewandert. Habs auch mit document.write versucht, aber das klappt nicht

- - - Aktualisiert - - -

Wen es interessiert:
Gerade war ein Freund bei mir und wir haben das Problem gemeinsam gelöst. Es geht doch mit document.write, wenn man die ausgebenden iframe-Texte vorher in Variablen speichert. (Warum? keine Ahnung)

HTML:
<script type="text/javascript">
// <![CDATA[

   // Ermittlung von x

   var frtext1="<iframe src="http://meineseite/frame1.php?area=1" style="border:0px #FFFFFF none;" name="fr1" scrolling="no" frameborder="0" align=aus marginheight="0px" marginwidth="0px" height="90" width="500"></iframe>";
   var frtext2="<iframe src="http://meineseite/frame2.php?area=2" style="border:0px #FFFFFF none;" name="fr2" scrolling="no" frameborder="0" align=aus marginheight="0px" marginwidth="0px" height="90" width="500"></iframe>";

   if(x==0)
   { 
     document.write(frtext1);
   }
  else
   {  
    document.write(frtext2);
   }
// ]]>
</script>
 
Zuletzt bearbeitet von einem Moderator:
Nachtrag: Muss mich leider korrigieren. Die genannte Lösung funzt nicht, da alles, was dahinter kommt, nicht dargestellt wird. Die Frage ist also doch wieder unbeantwortet
 
funktionieren sollte das so, wie du das hast, egal ob in variable oder nicht. das ist allerdings nicht so elegant. auch kannst du das nur im globalen code machen und nicht in einem eventhandle.
was besser ist, füge den iframe in dein html ein, verpass diesem eine id, besorge dir im js dann später das element über document.getElementById und setze das src-attribute
Code:
document.getElementById('myIFrame').src = "http://meineseite/frame1.php?area=1";
 
Danke, das war der entscheidende Hinweis! Hier der gesamte Code:

Code:
<iframe id="myiframe" style='border:0px #FFFFFF none;' scrolling='no' frameborder='0' align=aus marginheight='0px' marginwidth='0px' height='90' width='500'scrolling="no" ></iframe>

<script type="text/javascript">
  // hier wird x definiert
  if(x == 0) 
  { 
   document.getElementById('myiframe').src="http://meineseite/frame1.php?area=1";
  } 
  else 
  { 
   document.getElementById('myiframe').src="http://meineseite/frame2.php?area=3";
  }
</script>
 
Zuletzt bearbeitet von einem Moderator:
Zurück
Oben