09. maj 2002 - 09:11Der er
22 kommentarer og 1 løsning
Ur på hjemmesiden med hjælp fra ASP
Jeg skal have et ur til at køre på min hjemmeside. Jeg har fundet mange gode, som tager start tidspunktet fra klientens computer. Jeg skal bruge et ur som tager start tidspunktet fra serveren, altså en asp variabel som kører vidre i javascript !!
bare brug de scripts, som kører på klokken fra clienten.
Skriv på client-side:
<script>tid = "<%=now()%>"</script>
Derefter bruger du variablen "tid" i javascript, til at finde klokken :) I stedet for at javascript skriver getDate() etc... ændrer du det bare til "tid".
han nævnte ikke noget om en ASP fejl... der burde komme en, hvis jeg stavede forkert...
Synes godt om
Slettet bruger
09. maj 2002 - 11:06#12
Ja, men for det første staves milliseconds generelt med to l'er, og for det andet viste en Google-søgning på "milliseconds" ét resultat, mens "miliseconds" ikke gav nogen!
Synes godt om
Slettet bruger
09. maj 2002 - 11:09#13
Findes der overhovedet en indbygget funktion, der kan vise antal millisekunder?
Den skriver ikke noget ekstra, med sætningen document.write( "<br>now() er '<% =NOW() %>'<BR> ); Jeg prøvede også med document.write( "<br>now() er '<% =NOW() %>'<BR>" ); Det gav heller ikke noget
Det er i sætningen <%=formatmiliseconds(now()) %> at problemet ligger hvis man fjerner formatmiliseconds viser den resten af siden, men feltet til uret er stadig tomt!
din anden version (med " forenden var korrekt. og burde give etellerandet.
de to l'er i milliseconds er korrekt.
Har du mulighed for at finde funktionen NOW() i din dokumentation og fortælle hvad den gør og hvad den returnerer (jeg har søgt i et kvarter på http://msdn.microsoft.com/library/ men uden at kunne finde sådan en funktion.)
Jeg tror at jeg har fundet problemet! Jeg kører ASP i VBscript. milliseconds er en komando i Jscript! Så når jeg kører Jscript<%=formatmiliseconds(now()) %> fatter VB det ikke!
lad os sige at klokker er 12.00.00 i dag hvad er det så i millisekunder i javascript?? og hvordan udregnes det? Går man ikke ud fra en bestemt dato i 70'erne?
var nowString = "<% =NOW() %>"; // klokken lige nu (fra server) nowString = nowString.split(" "); if ( nowString.length != 2 ) { alert( "Næe, det er heller ikke det format now() returnerer" ); var dagString = "09-05-2002"; var tidString = "12:34:56"; } else { dagString = nowString[0]; tidString = nowString[1]; } var aar = parseInt( dagString.substr(6,4), 10 ); var maaned = parseInt( dagString.substr(3,2), 10 ); var dag = parseInt( dagString.substr(0,2), 10 ); var time = parseInt( tidString.substr(0,2), 10 ); var minut = parseInt( tidString.substr(3,2), 10 ); var sekund = parseInt( tidString.substr(6,2), 10 ); var tidFraServer = new Date( aar, maaned, dag, time, minut, sekund ); tidFraServer = tidFraServer.valueOf() +2000; //************** tid i millisecs efter 1970
function updateWatch24() { // update the watch
var tid = new Date( (tidFraServer+=1000) ); // lav et dato objekt
var h = tid.getHours(); hrs = (h>=10)?(""+h):("0"+h); // hours
ja det er lidt omstændigt at gå omkring en formatteret streng for at finde tiden.
Prøv at kikke efter andre tid-funktione i VBscript. Det lyder usandsynligt at der ikke skulle findes en der giver tiden som et enkelt unix-epoch tal, eller blot et andet tal, de er nemme at regne på så det passer.
mvh JakobA
Synes godt om
Ny brugerNybegynder
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.