10. maj 2003 - 15:22
Der er
33 kommentarer og 1 løsning
dato problem
Hejsa sidder og roder med dato i javacript (i forbindelse med asp) hvor jeg først laver tiden om til millisekunder ved hjælp af getTime().. problemet er så bare lige den at når jeg skal lave det om til en dato igen med new Date() og så siger f.eks dato.getFullYear() så får jeg ikke lige den dato jeg havde skrevet ind :( håber der er nogen der har en forklaring på dette...
Annonceindlæg fra Computerworld
Slettet bruger
10. maj 2003 - 15:23
#1
Jeg håber selv du kan se, at det ikke er nok informationer... :)
Jamen hvis du først har et Date-objekt og skal have et nyt så tag dog en kopi ...
phoenixv >> hehe.. får lige lidt mere så... date = "30-10-79" datoen kommer fra et inputfelt function convertDate(date){ var thistime = new Date(date); now = thistime.getTime(); return now; } --------------------------- var date = new Date(now); alert(date.getYear()); håber det var lidt bedre.....
Jamen constructoren for Date skal have yy,mm,dd som format, hvis du har år måned og dag
Slettet bruger
10. maj 2003 - 15:30
#5
Man kan ikke bare give en tilfældigt formateret dato til et dato-objekt og så regne med, at det selv finder ud af resten! Du skal gøre noget lignende dette: <script> function konverterDato(felt) { temp = felt.value.split("-"); dato = new Date(parseInt(temp[2], 10), parseInt(temp[1], 10) - 1, parseInt(temp[0], 10)); alert(dato.getFullYear()); } </script> <input type="text" onBlur="konverterDato(this);">
roenving >> man kan godt sætte millisekunder :)
dvs. du må gøre: function convertDate(date){ dateParts = date.split("-"); var thistime = new Date(dateParts[2],dateParts[1],dateParts[0]); now = thistime.getTime(); return now; }
Jeps, men den kan ikke forstå '30-10-79'
Slettet bruger
10. maj 2003 - 15:33
#9
roenving>> Det skaber komplikationer ved datoer såsom 03-09-02, da browseren vil fortolke tallene som heksidemaltal.
-- og så som phoenixv har husket: parseInt ,-)
dateParts = date.split("-"); det der vil den ikk acceptere... :( [jeg bruger asp med javascript]
Slettet bruger
10. maj 2003 - 15:35
#12
... med 10 som anden parameter! :)
Slettet bruger
10. maj 2003 - 15:36
#13
summersun>> Brug nu mit script. Det virker.
Slettet bruger
10. maj 2003 - 15:36
#14
Deusden har det ingen globale variabler og derfor mindre grund til forvirring.
Slettet bruger
10. maj 2003 - 15:37
#15
roenving>> Husk også, at månednummeret skal være én mindre.
Du har helt ret ... I min iver overså jeg både det ene og det andet ...
phoenixv >> ehm.. :( det virker i hvertfald ikk hos mig :(
Slettet bruger
10. maj 2003 - 15:40
#18
Så bruger du det forkert.
Microsoft JScript runtime error '800a138f' 'value' is not an object /opret_arrangement.asp, line 14 linje 14>> temp = felt.value.split("-");
Slettet bruger
10. maj 2003 - 15:42
#20
Prøv fx dette: <html> <head> <script> function konverterDato(felt) { temp = felt.value.split("-"); dato = new Date(parseInt(temp[2], 10), parseInt(temp[1], 10) - 1, parseInt(temp[0], 10)); alert(dato.getFullYear()); } </script> </head> <body> <form> <input type="text" name="datoFelt"> <input type="button" value="ok" onClick="konverterDato(this.form.datoFelt);"> </form> </body> </html>
Slettet bruger
10. maj 2003 - 15:42
#21
Funktionen skal have en reference til et tekstfelt-objekt. Ikke datostrengen.
ja... men som sagt.. sender feltes indhold videre til en Asp side som så skal regne det om...
Slettet bruger
10. maj 2003 - 15:45
#23
Så udtrækker du bare millisekunderne med getTime.
Slettet bruger
10. maj 2003 - 15:47
#24
Mit script viser dig bare, hvordan du får et input fra brugeren korrekt ind i et dato-objekt. Så må du selv bygge videre på det.
ja, men det bygger jo på at jeg bruger split() og den vil ikke æde den funktion :(
Slettet bruger
10. maj 2003 - 15:52
#26
Jo, i mit eksempel.
Slettet bruger
10. maj 2003 - 15:52
#27
Du må gøre noget galt. Smid et link.
Slettet bruger
10. maj 2003 - 15:55
#29
Ok, på den måde... Jeg troede, du mente et client-side script, som så sendte informationerne videre til en database. Så bør du bruge ASP-kategorien.
Slettet bruger
10. maj 2003 - 15:56
#30
Eller evt. client-side lægge antal millisekunder ind i et hidden-felt i formen og så gøre noget med disse i ASP-scriptet. Det sparer server-kræfter.
oki... havde bare den opfattelse af at man skulle stille spørgsmålene herinde, nu hvor det er javascript man bruger... men så hopper jeg derover.... takker.. hvis du også vil have nogel point så må du lige smide et svar ;)
Slettet bruger
10. maj 2003 - 16:01
#32
Nej tak, jeg hjalp jo ikke. Men du bør helt klart overveje det med at klare noget af processen client-side.
-- øeh, heller ikke meget hjælp herfra ?-|
Vi tilbyder markedets bedste kurser inden for webudvikling