Gå til innhold

dato i javascript


Anbefalte innlegg

Jeg har en tekststreng (dato) som inneholder '01-10-2008'

 

Jeg har en kode i javascript som er slik:

 

var d = new Date(dato);

alert(d);

 

Opera tolker dette korrekt til:

Wed, 01 Oct 2008 00:00:00 GMT+0200

 

IE tolker dette til:

 

Thu Jan 10 00:00:00 UTC+0100 2008

 

 

Hvordan får jeg IE til å tolke dette som jeg vil ha det? (Jeg vil at koden

skal fungere både i Opera og IE for å sammenligne datoer)

 

:ermm:

Endret av ttsam
Lenke til kommentar
  • 1 måned senere...
Videoannonse
Annonse
Hvordan får jeg IE til å tolke dette som jeg vil ha det? (Jeg vil at koden

skal fungere både i Opera og IE for å sammenligne datoer)

 

Jeg tror det har med måten du prøver å sette Date objektet på.

Date objektet bør vel settes med tall og komma som separator (01,10,2008) her bruker du en streng.

 

Du kan prøve med:

 

var dato = "01-10-2008";
var td = dato.split("-");
var d = new Date();
d.setFullYear(td[2],td[1],td[0]);

Kan se for meg at dato.replace(/-/g,",") også vil gi deg en streng som verdi, noe som heller ikke vil fungere.

 

EDIT:

Rettet opp en feil i setFullYear (td[0],td[1],td[2] -> td[2],td[1],td[0])

 

Når jeg tenker over det setter du faktisk date med var d = new Date (-2019) i ditt tilfelle. (1 - 10 - 2008 = -2019). Sett heller datoen med d.setFullYear(2008,10,1) og husk på at 0 = januar, 1 = februar osv. Dette fungerer som for en vanlig array.

Endret av cbastus
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...