Kan man ställa in en tidsfördröjning i Response.Redirect, typ som man kan i metataggen refresh?
Response.Redirect
14 svar · 216 visningar · startad av PlayerOne
Vad jag vet så går det inte.
Altenativet skulle vara att skriva en if sats som körs efter x antal sekunder!
------------------
Mvh Rickard
www.ricki.nu
Visst kan du frysa ekeveringen ett par sekunder, men om du vill visa något på sidan, innan man skickas vidare, så går det inte. En redirect kan inte komma efter innehållet på en sida.
------------------
Gunnar Liljas - webbutvecklare
Leon Reklambyrå AB
Hur kan det gå till?
Man kan göra response.clear och sedan köra response.redirect(url). Då töms HTTP headern:
<%response.buffer=true %>
html här
.
.
.
<%if action="vilkor" then
Response.Clear
response.redirect("url")
end if%>
.
.
.
Jag använder det ganska mycket...
Ja, men det funkar ju i IIS4 också, och ger inte riktigt det resultat som jag tror eftersträvades här.
Dessutom; om den nya sidan ligger på samma server så behöver man inte ens cleara headern innan, utan kan använda Server.Transfer eller Server.Execute istället.
Mer info:
http://www.asptoday.com/articles/19990329.htm
//Dell
Jo, men det är ju faktiskt inte riktigt samma sak...
------------------
Gunnar Liljas - webbutvecklare
Leon Reklambyrå AB
Det får vi fråga PlayerOne. Jag antog att ha ville ha något i stil med refreshen som kommer efter att man gjort ett inlägg i forumet.
------------------
Gunnar Liljas - webbutvecklare
Leon Reklambyrå AB
Så här ser koden ut:
If Connection.Errors.Count=0 Then
Response.Write "<font face='Verdana' Size='2'>Din händelse är inlagd!</strong></font>"
Response.Redirect("default.asp")
End If
Fast då hinner användaren inte läsa "Din händelse är inlagd!" eftersom han blir förflyttad på en gång.
Nu har jag tagit bort redirect och ändrat det till metataggen refresh. Det som jag inte är riktigt nöjd med är att man förflyttas även om inlägget inte lyckas av någon anledning.
i head-taggen:
If Connection.Errors.Count=0 Then
response.write "<META blablabal"
End If
och sen...
If Connection.Errors.Count=0 Then
Response.Write "<font face='Verdana' Size='2'>Din händelse är inlagd!</strong></font>"
End If
------------------
/bohlin
Den här koden funkar inte:
<HEAD>
<%
Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open "dsnKalender", "sa"
If Connection.Errors.Count=0 Then
Response.Write "<meta http-equiv='Refresh' content='2;url=default.asp'>"
End If
%>
</HEAD>
Jag får inget felmeddelande, men response.write utförs aldrig, det fungerar förmodligen inte inom headtaggarna?
Det funkar däremot om man kör scriptet inom bodytaggarna. Fast då kommer metataggen inte inom headtaggarna, men det kanske inte gör något? Det funkar ju i alla fall