Ik heb een pagina met een divje waarin ik via javascript een andere pagina laad.
In de pagina die in de div geladen wordt, heb ik een formpje staan, zodra ik hierin een succesvolle submit doe. geef ik via php de opdracht:
header('Location: succesvol.php');
Echter wordt succesvol.php geladen in de div, wat ik wil is dat de volledige pagina "vervangen" wordt door succesvol.php, of gewoon herladen wordt.
Ik heb al diverse dingen geprobeerd, maar ik krijg het niet voor elkaar.. heeft iemand hier ervaring mee?
header("Refresh: 1;"); werkt bv ook niet vanuit de div om de volledige pagina te herladen.
Ook via javascript, top.location.reload(); / window.location.reload(); krijg ik niet de volledige pagina herladen..
Aanvullend bericht:
Nog een voorbeeld:
Zodra het formpje in de div geslaagd is geef ik een:
header('Location: test.php');
test.php ziet er zo uit:
echo "<body onload=\"alert('test');\">";
echo "test";
echo "</body>";
De pagina wordt goed geladen in de div, maar de onload functionaliteit werkt dus niet.
Is er een andere manier om de functie aan te roepen? ook als ik een <img onload=\"alert('bla')\"> in de div zet wordt het stukje javascript niet uitgevoerd..
- pagina reload vanuit een div / javascript
-
23-10-2009, 08:20 #1
- Berichten
- 506
- Lid sinds
- 16 Jaar
pagina reload vanuit een div / javascript
Laatst aangepast door Michel Willemse : 23-10-2009 om 08:38 Reden: Automatisch samengevoegd.
-
In de schijnwerper
-
23-10-2009, 10:10 #2
- Berichten
- 750
- Lid sinds
- 15 Jaar
Verander test.php eens naar
echo '<body onload="alert("test");">';
echo 'test";
echo '</body>';
-
23-10-2009, 10:16 #3
- Berichten
- 2.392
- Lid sinds
- 17 Jaar
@raymond: Fout, zo gaat het niet werken. Doordat je dubbele quotes gebruikt binnen je alert word de onload gedeelte vroegtijdig afgesloten ;-)
Simpeler:
echo '<script type"text/javascript">
alert("Alert called!");
</script>';
Houd er wel rekening mee dat je bij je request moet meegeven dat javascript mag worden uitgevoerd!
Aanvullend bericht:
Wat je ook nog kan doen is de response ophalen en kijken of je bijvoorbeeld het woord REFRESH terugkrijgt. Als dat gebeurt, geef je daar de opdracht om de pagina te verversen. Ik heb het dus over de functie die die div update he, even voor de duidelijkheid!Laatst aangepast door Chris Horeweg : 23-10-2009 om 10:18 Reden: Automatisch samengevoegd.
-
23-10-2009, 10:33 #4
- Berichten
- 750
- Lid sinds
- 15 Jaar
@Chris H Ja klopt wat je zegt, herkansing dan maar.
De head van de html geeft aan waar de code geplaatst moet worden.
Code:<head> echo '<script type="text/javascript"> window.onload = function(){ alert("test"); }'; </script> </head>
-
23-10-2009, 11:14 #5
- Berichten
- 506
- Lid sinds
- 16 Jaar
Bedankt voor de reacties!
Ik ben er helaas niet uitgekomen, dus ik heb maar voor een work-around gekozen.
Ik heb de form afhandeling buiten de div geplaatst, in dit geval was dit geen probleem omdat de data uit de div ook in een sessie opgeslagen zit, zodoende kon ik deze ook buiten de div oproepen.
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic