• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

<select onClick=lade iframe

Status
Für weitere Antworten geschlossen.

burli001

Mitglied
Hallo.

Ich hab folgendes vor, wenn wer bei <select> wer rein klickt, (onClick=), dass unten ein iframe ladet, nur wie schaff ich das?
 
kannstes als formular machen:

PHP:
<?php
if(isset($_POST['select']) && isset($_POST['submit']))
   {
   echo '
<iframe>
<!-- hier das zegs, das angezeigt werden soll -->
</iframe>
         ';
   }
?>

Nils aka XraYSoLo
 
mit reinem HTML nicht.

aber auch mit JS wäre es nicht möglich, einen iframe erscheinen zu lassen. schreibbar machen ja, aber net auftauchen lassen.

Nils aka XraYSoLo
 
Es würde auch schon reichen, wenn der iframe schon vorhanden ist mit einer Datei, aber bei diesen Klick dann eine andere Datei aufgerufen wird.
 
HTML:
<html>
<head>
<script language="JavaScript">
<!--
function loadframe(formular,frame)
{
  var element = formular.room.selectedIndex;
  if (formular.room.options[element].value != 0)
  {
    document.getElementById(frame).src = formular.Ziel.options[element].value;
    document.getElementById(frame).style.display = 'block';
  }
}
//-->
</script>
<style type="text/css">
<!--
#chat {display:none;}
-->
</style>
</head>
<body>
<form name="chatrooms">
<select name="room" onchange="loadframe(this.form,'chat');">
<option value="" selected>Chatraum ändern</option>
<option value="raum1.html">Raum1</option>
<option value="raum2.html">Raum2</option>
<option value="raum3.html">Raum3</option>
</select>
</form>
<iframe src="room1.html" id="chat">
</body>
</html>
 
Du kannst deinen IFrame in ein DIV positionieren.
Diesem gibst du dann eine ID
Code:
<div id="meinIframe"></div>

Mit JavaScript kannst du dann den Inhalt des Divs ändern.
Code:
<script type="text/javascript">
function changeIframe() {
document.getElementById('meinIframe').innerHTML = '<iframe src="blubb.html"></iframe>';
}
</script>
 
Du kannst deinen IFrame in ein DIV positionieren.
Diesem gibst du dann eine ID
Code:
<div id="meinIframe"></div>

Mit JavaScript kannst du dann den Inhalt des Divs ändern.
Code:
<script type="text/javascript">
function changeIframe() {
document.getElementById('meinIframe').innerHTML = '<iframe src="blubb.html"></iframe>';
}
</script>

Diese Variante hab ich versucht, nur mit <select id="meinIframe"> nur funktioniert dies nicht...
 
Dann hast du nicht meine Variante getestet :P

HTML:
<select id="meineAbfrage" onChange="changeIframe()">
  <option>---</option>
  <option value="http://pfad/zum/iframe1.html">IFrame 1</option>
  <option value="http://pfad/zum/iframe2.html">IFrame 2</option>
</select>

<script type="text/javascript">
function changeIframe() {
  var src = this.getElementById('meineAbfrage').value;
  document.getElementById('meinIframe').innerHTML = '<iframe src=" ' + src + ' "></iframe>';
}
</script>

<div id="meinIframe"></div>

Erklärung:
In dem Select-Feld gibst du jeder Option den Pfad zum jeweiligen IFrame als value. Wenn sich jetzt in dem Select-Bereich etwas ändert, wird die JavaScript-Funktion changeIframe aufgerufen, und ausgeführt.
Diese liest aus dem Select-Bereich den aktuell ausgewählten Value heraus, und ändert dann den Inhalt von dem div mit der id meinIframe.
Heißt also, dass INNERHALB des DIV-Bereiches dann dein IFrame erscheinen sollte.
 
Ich glaub ich bin zu doof, hier mal die ausschnite:

Code:
<html>
<head>
{NEED|$roomlist&onlineusers}
        <base href="{GET|$settings.urls.htmlurl}">
<link rel="stylesheet" href="http://web3.greatboard.de/start2/style.css" type="text/css">
        <title>{GET|$settings.chatname}</title>
        <script language="JavaScript" src="chat.js" type="text/javascript">
        </script>
<script type="text/javascript">
function changeIframe() {
document.getElementById('changeIframe').innerHTML = '<iframe src="blubb.html"></iframe>';
}
</script>
Weiter unten:

Code:
<div id="changeIframe"></div>
Und hier nun der <select> bereich:
Code:
<select value="changeIframe" onchange="CheckAuswahl()" name=room width="100px" size="10" face="Century Gothic" style="font-size: 11pt">

Es geht nicht...
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben