webForumDet fria alternativet

Nedräknare

.NET

3 svar · 387 visningar · startad av me01avd

Medlem sedan apr. 200418 inlägg
Frågan#1

Hej,

någon som vet om det går att göra en nedräknare i asp.net? en typ av klocka som räknar ner från en viss tid till noll. och när det sker ska en funktion anropas eller nått..

har hittat ett javascript som räknar ner, men vet inte riktigt hur jag ska anropa det från codebehind, och hur jag ska få scriptet att anropa en codebehind funktion när tiden är slut. javascriptet ser ut såhär:

<SCRIPT LANGUAGE="JavaScript">
var up,down;var min1,sec1;var cmin1,csec1,cmin2,csec2;
function Minutes(data) {
for(var i=0;i<data.length;i++) 
if(data.substring(i,i+1)==":") 
break; 
return(data.substring(0,i)); 
}
function Seconds(data) { 
for(var i=0;i<data.length;i++) 
if(data.substring(i,i+1)==":") 
break; 
return(data.substring(i+1,data.length)); 
}
function Display(min,sec) { 
var disp; 
if(min<=9) disp=" 0"; 
else disp=" "; 
disp+=min+":"; 
if(sec<=9) disp+="0"+sec; 
else disp+=sec; 
return(disp); 
}
function Up() { 
cmin1=0; 
csec1=0; 
min1=0+Minutes(document.sw.beg1.value); 
sec1=0+Seconds(document.sw.beg1.value); 
UpRepeat(); 
}
function UpRepeat() { 
csec1++; 
if(csec1==60) {
csec1=0; cmin1++; 
}
document.sw.disp1.value=Display(cmin1,csec1); 
if((cmin1==min1)&&(csec1==sec1)) 
alert("Stopwatch Stopped"); 
else up=setTimeout("UpRepeat()",1000); 
}
function Down() { 
cmin2=1*Minutes(document.sw.beg2.value); 
csec2=0+Seconds(document.sw.beg2.value); 
DownRepeat(); 
}
function DownRepeat() { 
csec2--; 
if(csec2==-1) { 
csec2=59; cmin2--; 
} 
document.sw.disp2.value=Display(cmin2,csec2); 
if((cmin2==0)&&(csec2==0)) 
alert("Tiden tog slut! Nästa spelare!"); 
else down=setTimeout("DownRepeat()",1000); 
}
</SCRIPT>
Medlem sedan juni 20019 024 inlägg
#2

ASP.NET körs på servern och JavaScript hos klienten. Det innebär att nedräknaren inte kan kalla på någon funktion annat än att sidan laddas om. Om det nu är det du vill. :)

Medlem sedan aug. 20003 575 inlägg
#3

Du kan ju göra så att när javascript timern har nått dit du vill
så använder du location.href=sidan.aspx?command=docommand

Sidan kollar av command och ser att jaha nu skall jag starta den där funktionen.

Medlem sedan sep. 20011 914 inlägg
#4

Lägg till en LinkButton till din sida och sätt add.Style.Add("display", "none") på den i code-behind. Vidare i code-behind ordnar du en funktion som hantera dess click event.

I javascriptet lägger du till nedan där du vill att postbacken skall ske. :

__doPostBack('[i]id:t på linkbuttonen[/i]','')
423 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
287 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
288 ms — ändringar (db)