Hallo,
Ich habe folgendes Problem.
Aus einem "Startfenster" wird ein popup Fenster eröffnet. Dieses
popupfenster enthält eine Funktion die mittels "opener" eine Funktion im "Startfenster" aufrufen soll.
---- Quelltext "Startfenster":
<html>
<head>
</head>
<script>
var globaltestvar;
function Fensterauf() {
Fenster = window.open("xxxx.htm", "Fenster", "width=500,height=340,scrollbars");
}
function test(testvar)
{globaltestvar= testvar;
}
function Wertansehen()
{alert(globaltestvar);
}
</script>
<body bgcolor="#FFFFFF" text="#000000">
<a href="javascript:Fensterauf();">Fenster starten</a>
<a href="javascript:Wertansehen();">Wert zeigen</a>
</body> </html>
---- Quelltext "popupfenster":
<html>
<head>
<script>
function Datensend() {
opener.test("Zeichenkette");
opener.focus();
}
</script>
</head>
<body bgcolor="#FFFFFF" text="#000000">
<a href="javascript:Datensend();">Werte Übermitteln</a>
</body>
</html>
Das funktioniert wunderbar ABER wenn das "Startfenster" aus einem Perl Program erzeugt wird so weiß das popupfenster nicht mehr wie es gestartet wurde.
---- Quelltext des Perl PGs:
#!/usr/bin/perl
use strict;
use CGI::Carp qw(fatalsToBrowser);
print "Content-type: text/html\n\n";
print '<html>';
print '<head>';
print '</head>';
print '<script>';
print 'var globaltestvar;';
print 'function Fensterauf() {';
print 'Fenster = window.open("file:///C|/testtttt/xxxx.htm", "Fenster", "width=500,height=340,scrollbars");';
print '}';
print 'function test(testvar)';
print '{globaltestvar= testvar;';
print '}';
print 'function Wertansehen()';
print '{alert(globaltestvar);';
print '}';
print '</script>';
print '<body bgcolor="#FFFFFF" text="#000000">';
print '<a href="javascript:Fensterauf();">Fenster starten</a> ';
print '<a href="javascript:Wertansehen();">Wert zeigen</a> ';
print '</body> </html>';
Ich habe alles was mir einfällt schon probiert.
Besteht eigentlich ein Unterschied für den Browser, ob der Quelltext aus einer echten HTML Datei stammt, oder ob der Quelltext mit einem Perl PG mittels print anweisung erzeugt wurde?
Dnake!!!