Avatar billede msamsing Nybegynder
23. marts 2005 - 12:19 Der er 11 kommentarer og
1 løsning

autoclose og redirect i iframe

Hej!

Jeg har lavet en formular i en iframe der redirect'er til en ny side ved afsend.
Det jeg gerne vil, er at den nye side skal lukke automatisk efter 3-5 sekunder og sende mig tilbage til formularen (altsammen indenfor iframen).
Er det muligt
Avatar billede skyggen2000 Nybegynder
23. marts 2005 - 12:21 #1
Det er det da, lad mig lige finde et eksempel.
Avatar billede skyggen2000 Nybegynder
23. marts 2005 - 12:31 #2
Det hele sker i samme IFRAME right?

Så burde dette eksempel funkte.
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>
<body>       
    <div>noget html gejler</div>
</body>
<script language="javascript" type="text/javascript">

//dette er bare et eksempel
//5000 betyder 5 sek
window.setTimeout("testFunction();",5000);
   
function testFunction()
{
    alert("ryger 1 tilbage i historikken")
    window.history.back();
}   


//det du skal bruge helt specifikt
//window.setTimeout("window.history.back();",5000);

</script>
</html>
Avatar billede msamsing Nybegynder
23. marts 2005 - 12:45 #3
det virker ikke rigtig - har bare kopieret hele scriptet ind! - det har vel ikke nogen betydning hvad browser og os man kører
Avatar billede skyggen2000 Nybegynder
23. marts 2005 - 12:47 #4
Kører IE, hvad kører du da?
Avatar billede msamsing Nybegynder
23. marts 2005 - 12:48 #5
safari / mac
Avatar billede msamsing Nybegynder
23. marts 2005 - 12:52 #6
har fået det til at virke i IE6 - men når man kommer tilbage til formularsiden, står oplysningerne der stadig. De skulle helst gerne slettes!
Avatar billede skyggen2000 Nybegynder
23. marts 2005 - 12:56 #7
Det er klart, for den henter det fra historikken.

dvs. du vil gerne have at den refresher siden når den ryger tilbage.

Så bør du i stedet benytte document.location = "URL", hvor URL er stien til den gamle side, så bliver den reloadet.

I stedet for at skrive din URL direkte, kan du forsøge at benytte document.referrer, den indeholder den URl du kom fra, hvis det var via et link man skiftede side.
Avatar billede msamsing Nybegynder
23. marts 2005 - 13:00 #8
nu spørger jeg dumt, for jeg er en noob til programmering. Men hvor og hvordan sætter jeg det nye ind?
Avatar billede skyggen2000 Nybegynder
23. marts 2005 - 13:06 #9
Hvis du vil skrive referencen direkte skal du bytte "URL" ud med din sti fx hej.asp eller hvad den forrige side hed.
Avatar billede msamsing Nybegynder
23. marts 2005 - 13:10 #10
ja okay - det forstår jeg godt... men hvor sætter jeg document.location = "URL" ind henne og præcis hvordan skal det stå? Jeg er som sagt helt nybegynder når det drejer sig om javascript!
Avatar billede skyggen2000 Nybegynder
23. marts 2005 - 13:20 #11
Allright, nu forstår jeg:)

Prøv med det her:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>
<body>       
    <div>noget html gejler</div>
</body>
<script language="javascript" type="text/javascript">

//dette er bare et eksempel
//5000 betyder 5 sek
window.setTimeout("testFunction();",5000);
   
function testFunction()
{
    document.location.href = "din url";
}   

//Eller uden funktionskald?
//window.setTimeout("document.location.href='DIN URL';",5000);

</script>
</html>
Avatar billede msamsing Nybegynder
23. marts 2005 - 13:40 #12
Du har jo tydeligvis styr på sagerne... Tak for hjælpen!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester