Avatar billede lindsten Nybegynder
29. maj 2002 - 13:06 Der er 10 kommentarer

hvordan opsplittes et dato-objekt

I min access database har gemmer jeg datoer i
datoformattet mm-dd-yy.
Når jeg henter en dato f.eks. 1. marts 2004, så modtager jeg følgende på skærmen 01-03-04, jeg har imidlertid behov for at adskille datoen sådan at jeg tilsidst har 3 variabler.
var dd: 01
var mm: 03
var yy: 04

Jeg har forsøgt med Split("-"), men det dur ikke.
Avatar billede hirayz Nybegynder
29. maj 2002 - 13:10 #1
var tmp = "01-03-04"
temp = tmp.split("-")

alert(temp[0]);
alert(temp[1]);
alert(temp[2]);

så kan du gøre med dem hvad du vil...
Avatar billede medions Nybegynder
29. maj 2002 - 13:10 #2
<script language="VBScript">
    Dag = Day(<%= rs("dato") %>)
    Mdr = Month(<%= rs("dato") %>)
    Yhr = Year(<%= rs("dato") %>)
</script>

kunne kun finde ud af det i VBScript, men håber du ka bruge det!
//>Rune
Avatar billede lindsten Nybegynder
29. maj 2002 - 13:35 #3
til hirayz -> forstår ikke helt, det har jeg prøvet - prøv lige at læse mit spørgsmål igen. Er der nogen der ved det eller gættes der blot.
Avatar billede helle_fred Nybegynder
29. maj 2002 - 13:47 #4
hirayz's løsning er rigtig, og skal den skæres ud i pap er det sådan her:

var tmp = "01-03-04"
temp = tmp.split("-")

var dd=temp[0]
var mm=temp[1]
var yy=temp[2]

Når du har prøvet split uden held er det måske fordi du starter funktionsnavnet med stort bogstav?

vh Helle
Avatar billede lindsten Nybegynder
29. maj 2002 - 13:53 #5
Til Helle
Selvfølgelig er den korrekt - har aldrig betvivlet det. Men du skulle måske også læse mit spørgsmål. Metoden er afprøvet uden resultat. Men måske handler det om hvad der overføres fra databasen. Men jeg vil da heller modtage et kvalificeret forslag på hvad man så gør.
Avatar billede lindsten Nybegynder
29. maj 2002 - 13:56 #6
Her er den kode som jeg har forsøgt mig med:

startdato = "" +resUnd("startdato");
startDatoArray = startdato .split("-");
Session("UndStartDag") = startDatoArray[0];   
Session("UndStartMdr") = startDatoArray[1];
Session("UndStartYY") = startDatoArray[2];

Håber den kan hjælpe
Avatar billede lindsten Nybegynder
29. maj 2002 - 14:31 #7
Jeg kan hente dele af tekststreng ved hjælp af metoden
substring(index,index) og kan derfor udelukke at der ikke er tale om en teksstreng, men så burde split virke. Kan det tænkes at '-' er omdannet til unicode eller at der i javascript skal angives et andet tegn for at splitte.

Datoen 04-03-05

Response.Write(startdato.substring(0,3)) - udskriver -> '04-'

En der kender unikode for '-' og '<' '>' eller kan fortælle hvorfor split
ikke virker i dette tilfælde
Avatar billede =maddog= Nybegynder
29. maj 2002 - 18:32 #8
jeg mener ikke at man kan blande javascript og serverside sprog sammen i en pærevælling på den måde.
hvis du vil se unicode (i hex) hurtigt kan du lave en lille side med denne finte
<a href="#" onclick="alert(escape(\"-<>\"));">unicode</a>
Avatar billede lindsten Nybegynder
30. maj 2002 - 00:26 #9
maddog - jeg takker - det var ikke et unicode problem - jeg er vist ikke god til datoer har istedet lavet det om til et streng objekt i databasen.
Avatar billede =maddog= Nybegynder
30. maj 2002 - 00:28 #10
ingen problemer. kunne du lokkes til at svare og lukke spørgsmålet så, nu hvor problemet er løst?
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester