Auto refresh hoofd scherm
Ik heb in PHP een pagina gemaakt.
Op die pagina kan je een popup venster openen met een formulier erop, na het verzenden wordt het popup schermpje automatisch afgesloten zonder meldingen. Dat werkt allemaal goed. Dat sluiten heb ik een stukje met Javascript gemaakt.
Alleen nu komt hetgeen ik niet voor elkaar krijg, namelijk het hoofdscherm automatisch laten refreshen als het popup schermpje gesloten wordt, dit moet dus met een bepaald commando gebeuren. Ik heb alleen geen idee hoe. Ik wil dus geen refresh om de x aantal seconden, maar juist op het moment dat het popup schermpje sluit.
Kortom: Ik wil de hoofdpagina refreshen zodra het popup scherm sluit?
Ik weet dat ik voor dit stukje niet helemaal aan het juiste adres ben op deze site, maar misschien dat er iemand is die hier ervaring mee heeft?
meta refresh?
iets met window.onclose() oid?
index.php
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?
echo '
<html>
<script src="js.js" language="javascript" type="text/javascript"></script>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Popup voorbeeldje</title>
</head>
<body >
<div onClick="toon_popup();"><u>pop up</u></div>
<div id="popup_boodschap"></div>
</body>
</html>
';
?>
echo '
<html>
<script src="js.js" language="javascript" type="text/javascript"></script>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Popup voorbeeldje</title>
</head>
<body >
<div onClick="toon_popup();"><u>pop up</u></div>
<div id="popup_boodschap"></div>
</body>
</html>
';
?>
popup.php
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?
echo '
<html>
<script src="js.js" language="javascript" type="text/javascript"></script>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Popup voorbeeldje</title>
</head>
<body>
<form>
<input onClick="popup_submit();" type="button" value="verzend"/>
<input onClick="popup_submit2();" type="button" value="refresh"/>
</form>
</body>
</html>
';
?>
echo '
<html>
<script src="js.js" language="javascript" type="text/javascript"></script>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Popup voorbeeldje</title>
</head>
<body>
<form>
<input onClick="popup_submit();" type="button" value="verzend"/>
<input onClick="popup_submit2();" type="button" value="refresh"/>
</form>
</body>
</html>
';
?>
js.js
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
var popupje = null;
function toon_popup()
{
var url = 'popup.php';
var venster_naam = "pop up";
var opties = 'width=250,height=300,scrollbars=no,toolbar=yes,location=yes';
popupje = window.open(url, venster_naam, opties);
}
function popup_submit()
{
opener.document.getElementById('popup_boodschap').innerHTML = 'op knop geduwd';
}
function popup_submit2()
{
opener.location = 'index.php'; // zelf invullen
}
function toon_popup()
{
var url = 'popup.php';
var venster_naam = "pop up";
var opties = 'width=250,height=300,scrollbars=no,toolbar=yes,location=yes';
popupje = window.open(url, venster_naam, opties);
}
function popup_submit()
{
opener.document.getElementById('popup_boodschap').innerHTML = 'op knop geduwd';
}
function popup_submit2()
{
opener.location = 'index.php'; // zelf invullen
}
Merk dus op:
opener is het window dat de popup heeft geopend.
Met opener. kan je dus alles van het parent venster aanspreken.
Wat je waarschijnlijk wel beter doet, is een kleine vertraging zetten op het refreshen van het parent venster, met setTimeout()
Gewijzigd op 01/01/1970 01:00:00 door Emmanuel Delay
Super! Hier kan ik wel mee uit de voeten denk ik.