nille99Medlem sedan aug. 2002353 inlägg
Tjena!
Det är såhär att jag har en session som kontrollerar inloggningsrättigheter på en sida. Jag har session.timeout på 40 min. Nu skulle jag vilja göra en timer som räknar ner minut efter minut och varnar när det är 5 min kvar. Hur gör jag det?
Mvh,
Nille
EitrazMedlem sedan sep. 2002385 inlägg
Nåt sånt här menar du eller?
<form name="timeout"><input type="text" name="timeleft" value="<%=Session.timeout%>" readOnly></form>
<SCRIPT language="JavaScript">
<!--
function countdown() {
time_left = parseInt(document.timeout.timeleft.value) - 1;
document.timeout.timeleft.value=time_left;
if (time_left == 5)
alert ("5 minuter kvar!");
if (time_left > 0)
setTimeout('countdown()',60000);
}
window.onLoad(countdown());
// -->
</SCRIPT>
-Eitraz
nille99Medlem sedan aug. 2002353 inlägg
jag får ett felmeddelande när jag kör sidan
document.timeout.timeleft är intenull eller inte ett objekt
<SCRIPT language="JavaScript">
<!--
function countdown() {
[B]time_left = parseInt(document.timeout.timeleft.value) - 1; [/B]
document.timeout.timeleft.value=time_left;
if (time_left == 5)
alert ("5 minuter kvar!");
if (time_left > 0)
setTimeout('countdown()',60000);
}
window.onLoad(countdown());
// -->
</SCRIPT>
colioneMedlem sedan juni 20013 386 inlägg
Är färdigladdad innan du startar nedräkningen? Och har du avslutat formen med: </form>?
nille99Medlem sedan aug. 2002353 inlägg
jag får felmeddelandet när jag startar sidan
<html>
<head>
<SCRIPT language="JavaScript">
<!--
function countdown() {
time_left = parseInt(document.timeout.timeleft.value) - 1;
document.timeout.timeleft.value=time_left;
if (time_left == 5)
alert ("5 minuter kvar!");
if (time_left > 0)
setTimeout('countdown()',60000);
}
window.onLoad(countdown());
// -->
</SCRIPT>
</head>
<body>
<form name="timeout"><input type="text" name="timeleft" value="<%=Session.timeout%>" readOnly></form>
</body>
</html>
EitrazMedlem sedan sep. 2002385 inlägg
Det är en ASP sida du kör va? ;)
tänkte så inte <%=Session.timeout%> är en tom sträng.
-Eitraz
nille99Medlem sedan aug. 2002353 inlägg
EitrazMedlem sedan sep. 2002385 inlägg
Underligt, jag testade koden jag skrev in ovan och det fungerade utmärkt.
-Eitraz
nille99Medlem sedan aug. 2002353 inlägg
kan du skicka hela sidan kod?
så kanske jag kan se om jag hittar något fel?
nille99Medlem sedan aug. 2002353 inlägg
har du explorer eller något annan browser?
kanske det som är problemet
colioneMedlem sedan juni 20013 386 inlägg
ändra den här delen längst ner på scriptet:
window.onLoad(countdown());
till
document.onload=countdown
nille99Medlem sedan aug. 2002353 inlägg
om jag skriver koden så här så får jag ett annat felmedellande
men jag får den att räkna ner.
Objektet stöder inte egenskapen eller metoden
<form name="timeout"><input type="text" name="timeleft" value="<%=Session.timeout%>" readOnly></form>
<SCRIPT language="JavaScript">
<!--
function countdown() {
time_left = parseInt(document.timeout.timeleft.value) - 1;
document.timeout.timeleft.value=time_left;
if (time_left == 5)
alert ("5 minuter kvar!");
if (time_left > 0)
setTimeout('countdown()',60000);
}
window.onLoad(countdown());
// -->
</SCRIPT>
Om jag byter ut koden
window.onLoad(countdown());
till
document.onload=countdown
så får jag inget felmeddelande men den räknar då inte ner
colioneMedlem sedan juni 20013 386 inlägg
Det har du fullständigt rätt i prova detta:
document.onLoad=countdown()
nille99Medlem sedan aug. 2002353 inlägg