Supportnet / Forum / Webseiten/HTML
Iframe in neuem Fenster öffnen
Frage
Hallo,
ich möchte einen IFrame in meiner Seite in einem neuen Fenster öffnen ( Popup), weiß jedoch überhaupt nicht, wie ich das anstelle...
Das ist so als Vorschaufunktion gedacht. In dem IFrame befindet sich eine Tabelle, welche mittels javascript gefüllt wird...
Ein Popup Fenster öffnen kann ich und die Tabelle basierend auf einer 2ten *.htm Datei wird geöffnet, ist jedoch nicht gefüllt!
Hat jemand eine Idee?
Antwort 1 von Redschina
hi,
ich würde für die beiden(?) seiten eine zweite index.htm erstellen (beliebiger name) und diese (anstatt des IFrames) mit target"_blank" verlinken.
gruß, redschina
ich würde für die beiden(?) seiten eine zweite index.htm erstellen (beliebiger name) und diese (anstatt des IFrames) mit target"_blank" verlinken.
gruß, redschina
Antwort 2 von Redschina
korrektur: target="_blank"
Antwort 3 von rfb
Mit JavaScript kannst du dein Zwischenergebnis nicht auf dem Server speichern, dazu bräuchtest du serverseitige Scripts. Daher muss das alles im Browser des Seitenbesuchers stattfinden. Und das ist sehr sehr mühsam:
Du müsstest die Daten aus dem IFrame per JavaScript übertragen (auslesen oder woher auch immer die Daten stammen) in das PopUp und dort wieder eintragen lassen.
Du müsstest die Daten aus dem IFrame per JavaScript übertragen (auslesen oder woher auch immer die Daten stammen) in das PopUp und dort wieder eintragen lassen.
Antwort 4 von Ronin0007
Genau das will ich @rfb !!!
die Datei ist eine *.hta Datei, die lokal ausgeführt wird um Serverfunktionen im Netzwerk zu überwachen...
Kann mir jemand sagen, wie ich das anstelle?
Wie gesagt, das neue Fenster mit der leeren Tabelle öffnen ist kein Problem.
...
function NeuFenster() {
Ergebnis = window.open(ifTab);
Ergebnis.focus();
...
<BUTTON ID="btnPreview" onclick=NeuFenster()>Vorschau öffnen...</BUTTON>
die Datei ist eine *.hta Datei, die lokal ausgeführt wird um Serverfunktionen im Netzwerk zu überwachen...
Kann mir jemand sagen, wie ich das anstelle?
Wie gesagt, das neue Fenster mit der leeren Tabelle öffnen ist kein Problem.
...
function NeuFenster() {
Ergebnis = window.open(ifTab);
Ergebnis.focus();
...
<BUTTON ID="btnPreview" onclick=NeuFenster()>Vorschau öffnen...</BUTTON>
Antwort 5 von rfb
in diesem thread dreht sich u.a. um frameübergreifendes JavaScript, schau mal: https://supportnet.de/threads/978054
Antwort 6 von abschweb
Hi,
ich beschäftige mich intensiv mit solchen Vorschautechniken, aber ich verstehe bisher noch nicht, was du genau wilst. Ein iFrame macht doch nur Sinn, wenn du dort eine andere html-Datei anzeigen willst. Nicht jedoch, um von einem Skript generierte Daten anzuzeigen - dazu füllst du einfach dynamsch ein <div> mit Inhalt.
Und ein Popup-Fenster zu öffnen, find ich auch keine gute Idee. Es gibt zu viele Popup-Verächter und -Verhinderer.
Willst du sowas: http://www.abschweb.de/abschweb.html?geier/nopop/tagebuch.htm ?
Gruß
Manfred
ich beschäftige mich intensiv mit solchen Vorschautechniken, aber ich verstehe bisher noch nicht, was du genau wilst. Ein iFrame macht doch nur Sinn, wenn du dort eine andere html-Datei anzeigen willst. Nicht jedoch, um von einem Skript generierte Daten anzuzeigen - dazu füllst du einfach dynamsch ein <div> mit Inhalt.
Und ein Popup-Fenster zu öffnen, find ich auch keine gute Idee. Es gibt zu viele Popup-Verächter und -Verhinderer.
Willst du sowas: http://www.abschweb.de/abschweb.html?geier/nopop/tagebuch.htm ?
Gruß
Manfred
Antwort 7 von abschweb
Sorry, die Diskussion ist schon ganz woanders, vergesst meinen Beitrag.
Manfred
Manfred
Antwort 8 von Ronin0007
Also hier nochmal genau das was ich will:
Ich habe ein *.hta Datei und ein *.htm Datei. In der *.htm Datei steht das Gerüst für eine Tabelle drin. In der *.hta Datei werden mittels Funktionsaufrufen Serverfunktionen im lokalen Netzwerk getestet (Bsp: spooler Dienst). Die Ergebnisse aus den Funktionen werden nun in einem IFRAME
...
<IFRAME ID="ifTab" application="yes" allowTransparency="true" width="100%" height="35%" frameBorder="0" />
...
tabellarisch dargestellt, welcher als Vorlage die *.htm Datei nimmt.
Soweit, so gut. Funktioniert alles perfekt. Nun möchte ich aber den Inhalt des IFrames mittels Klick auf einen Button in einem Extra Fenster darstellen um diese "Liste" von dort aus dann drucken zu können. Es kann ruhig ein Popup sein, da das ganze sowieso nur hier im lokalen Netz läuft...
Ich habe ein *.hta Datei und ein *.htm Datei. In der *.htm Datei steht das Gerüst für eine Tabelle drin. In der *.hta Datei werden mittels Funktionsaufrufen Serverfunktionen im lokalen Netzwerk getestet (Bsp: spooler Dienst). Die Ergebnisse aus den Funktionen werden nun in einem IFRAME
...
<IFRAME ID="ifTab" application="yes" allowTransparency="true" width="100%" height="35%" frameBorder="0" />
...
tabellarisch dargestellt, welcher als Vorlage die *.htm Datei nimmt.
Soweit, so gut. Funktioniert alles perfekt. Nun möchte ich aber den Inhalt des IFrames mittels Klick auf einen Button in einem Extra Fenster darstellen um diese "Liste" von dort aus dann drucken zu können. Es kann ruhig ein Popup sein, da das ganze sowieso nur hier im lokalen Netz läuft...
Antwort 9 von vasquez
_________________________
<html>
<head></head>
<body onLoad="test();">
<iframe id="ifTab" src="test.html">
</iframe>
<script language="javascript1.5" type="text/javascript">
//<!--
function test(){
var F= window.open("","");
F.document.write("<html><head><body></body></head></html>");
F.document.body.innerHTML=ifTab.document.body.innerHTML;
alert(document.getElementById("ifTab").document.body.innerHTML);//???
}
//-->
</script>
</body>
</html>
_____________________
über
die "print();" anweisung
im onLoad event des body vom neuen fenster
könnte die seite dann auch automatisch
gedruckt werden.
<html>
<head></head>
<body onLoad="test();">
<iframe id="ifTab" src="test.html">
</iframe>
<script language="javascript1.5" type="text/javascript">
//<!--
function test(){
var F= window.open("","");
F.document.write("<html><head><body></body></head></html>");
F.document.body.innerHTML=ifTab.document.body.innerHTML;
alert(document.getElementById("ifTab").document.body.innerHTML);//???
}
//-->
</script>
</body>
</html>
_____________________
über
die "print();" anweisung
im onLoad event des body vom neuen fenster
könnte die seite dann auch automatisch
gedruckt werden.
Antwort 10 von rfb
"innerHTML" ist IE-spezifischer Kram und nicht JavaScript, daher auch nicht zu den anderen Browsern kompatibel.
Antwort 11 von rfb
Zitat:
<html><head><body></body></head></html>
sieht zwar hübsch symmetrisch aus, die richtige Reihenfolge ist aber: <html><head><body></body></head></html>
<html><head></head><body></body></html>Antwort 12 von vasquez
da hab ich was vertauscht beim einfügen
und bevor ich noch gemekere krieg ,
test.html
ist einfach nur eine testdatei
ABER:
innerHTML
wird von IE , netscape und mozilla verwendet .
@rfb
probiers mal in den neuesten versionen der browser aus.
aber vieleicht verwechselst du innerHTML
mit innerText
und selbst das kann mit einem setter/getter
geändert werden
aber für welchen browser willst du denn noch ???
ich denke die meisten die nicht wie internet explorer
von microsoft sind , arbeiten mit gecko-technologie und ich meine ronin hat keine angabe gemacht ,
und deshalb habe ich daraus geschlossen
das es ein standart bekannter browser ist.
also entweder gecko oder microsoft ,ausserdem soll es local laufen , und nicht in die ganze welt versendet werden ,
und bevor ich noch gemekere krieg ,
test.html
ist einfach nur eine testdatei
ABER:
innerHTML
wird von IE , netscape und mozilla verwendet .
@rfb
probiers mal in den neuesten versionen der browser aus.
aber vieleicht verwechselst du innerHTML
mit innerText
und selbst das kann mit einem setter/getter
geändert werden
aber für welchen browser willst du denn noch ???
ich denke die meisten die nicht wie internet explorer
von microsoft sind , arbeiten mit gecko-technologie und ich meine ronin hat keine angabe gemacht ,
und deshalb habe ich daraus geschlossen
das es ein standart bekannter browser ist.
also entweder gecko oder microsoft ,ausserdem soll es local laufen , und nicht in die ganze welt versendet werden ,
Antwort 13 von rfb
Zitat:
probiers mal in den neuesten versionen der browser aus.
ich halt mich lieber an die Standarts.probiers mal in den neuesten versionen der browser aus.

