PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : HTML / Javascript Popup schliessen



dr.White
11.10.2006, 07:48
Hallo,

ich hab eine Seite auf der Ein Formular ausgefüllt wird. Nachdem das Formular abgeschickt wird dauert es je nach Eingabe einige Zeit bis eine Antwort fertig ist. Das Formular ruft per action="bla.php" eine andere seite auf die dann de auswertung der Eingaben und die formatierte Ausgabe der Antwort übernimmt. Gleichzeitig wird mit onclick="popup()" ein fenster geöffnet das den benutzer darauf hinweist, dass die bearbeitung einen moment dauert.
so.
wenn der benutzer beim Formular auf "query in new window" klickt öffnet sich die Ausgabeseite im neuen Fenster und es funktioniert das schliessen des popup sobald die "Ausgabeseite" fertig geladen hat mit onload="opener.popup.close()" .
wenn der benutzer aber nur "query" drückt wird kein neues fenster geöffnet, sondern die Ausgabeseite wird im selben fenster in dem das Formular ist/war geöffnet.
Meine Frage deshalb: Wie kann ich jetzt das Popup schliessen ?

Ich hoffe ich konnte es einigermasen gut darstellen so früh am Morgen
Schönen Tag auch
doc

dr.White
16.10.2006, 08:31
ich habs befürchtet... keiner auch nur eine Idee ?

geht das evtl gar nicht ? wie könnte ich das sonst lösen ?

CharlesCalthrop
23.10.2006, 13:30
Ich hoffe ich konnte es einigermasen gut darstellen so früh am Morgen

Meine Frage deshalb: Wie kann ich jetzt das Popup schliessen ?
doc

1.) Nein

2.) Popup schließen: Speichere die folgenden 2 Codebeispiele in einem Ordner als test.html und pop_test.html.

Die Beispieldatei "test.html" enthält einen Verweis, der
die "pop_test.html" hier mit 600x150 Pix ohne Navigationsleiste öffnet.

test.html


<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
<head>
<meta http-equiv="content-type" content="text/html; charset=us-ascii" />
<title>
Test
</title>
<meta content="Die Beschreibung der Seite" name="description" />
<meta content="Die Stichworte f&uuml;r Suchmaschinen" name="keywords" />
<meta content="Dr. White" name="author" />
<meta content="Dr. White" name="DC.Publisher" />
<meta content="2006-10-23" name="DC.Date" />
<meta content="http://z.B.myweb.de/html" name="DC.Identifier" />
<meta content="de" name="DC.Language" />
<meta content="All rights reserved" name="DC.Rights" />
<link href="../z.B.styles/filename.css" type="text/css" rel="stylesheet" />
</head>
<body>

<br/>
<script type="text/javascript">
//<![CDATA[
function popup(url) {
fenster=window.open(url, "Popupfenster", "width=600,height=150,resizable=yes");
fenster.focus();
return false;
}
//]]>

</script> <a href="pop_test.html" target="_blank" onclick="return popup(this.href);">Popup anzeigen</a><br/>
<br/>

</body>
</html>

Die Beispieldatei "popup.html" enthält einen Verweis, welcher
den Event-Handler "javascript:self.close()" enthält, durch den der
Anwender die popup.html per Mausklick schließen kann.

pop_test.html


<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
<head>
<meta http-equiv="content-type" content="text/html; charset=us-ascii" />
<title>
Popup
</title>
<meta content="Die Beschreibung der Seite" name="description" />
<meta content="Die Stichworte f&uuml;r Suchmaschinen" name="keywords" />
<meta content="Dr. White" name="author" />
<meta content="Dr. White" name="DC.Publisher" />
<meta content="2006-10-23" name="DC.Date" />
<meta content="http://z.B.myweb.de/html" name="DC.Identifier" />
<meta content="de" name="DC.Language" />
<meta content="All rights reserved" name="DC.Rights" />
<link href="../z.B.styles/filename.css" type="text/css" rel="stylesheet" />
</head>
<body>
<p>
Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
</p>
<span style="float: right; margin: -0.25em 6em 0em 0em;">Fenster
<a href="javascript:self.close()"><img style=
"border: 0px solid; width: 20px; height: 14px;" alt="schlie&szlig;en" src=
"../images/x010.png" /></a></span><br />

</body>
</html>

Erläuterung zum JavaScript in der XHTML-Datei test.html:

Die "CDATA"-Deklaration beginnt mit <![CDATA[ und endet mit ]]>. Ohne diese Deklaration
würde ein XML-Parser das <-Zeichen innerhalb des Scripts als Fehler ankreiden. (http://de.selfhtml.org/html/xhtml/unterschiede.htm#script_style)
(wenn Du die Seite in XHTML 1.0 schreibst)

Erläuterung zu:

<img style=
"border: 0px solid; width: 20px; height: 14px;" alt="schlie&szlig;en" src=
"../images/x010.png" /></a> (http://de.selfhtml.org/html/grafiken/verweise.htm#definieren) in der XHTML-Datei pop_test.html

(falls Du eine verweissensitive Grafik -hier 20 x14 Pix- verwenden möchtest)