Zdravím...mám v proměnné unixtime, ale za boha nemohu přijít ani vygooglit, jak ho převést na tvar "den.měsíc.rok".... poradí mi někdo prosím?
Díky, M.
Fórum › JavaScript, AJAX, jQuery
Formát datumu
a co si googlil proboha?
http://lmgtfy.com/?q=jquery+unixtime+formating
Když jsme googlil tak všude byly formáty dd/mm/yyyy ...KIIV napsal:
To Mr.m : jakem nahrazeni?
jinak už vyřešeno...
var unix = pomocna_datum.getTime()/1000;
var pomocnaprom = new Date(unix*1000);
pomocnaprom.setDate(pomocnaprom.getDate());
var den = pomocnaprom.getDate();
var mesic = pomocnaprom.getMonth();
var rok = pomocnaprom.getFullYear();
datum.value = den+"."+mesic+"."+rok;
Tak ještě dotaz... teď jsem zjistil, že pokud se počítá s datumy, které se "přelamují" do dalšího měsíce.. tak výsledek je o celý jeden den posunut... prosím vás.. čím to?
kód:
<script>
$(document).ready(function() {
//deklaraci prom. jsem vynechal...
$('#da_vy').keyup( function() {
var datum= da_vy.value.split(".",3);
var pomocna_datum = new Date(datum[2],datum[1],datum[0]);
//var den = parseInt(Math.Round(new Date().getTime()));
var unix = pomocna_datum.getTime()/1000;
var pomocnaprom = new Date(unix*1000); //čas v sekundách
pomocnaprom.setDate(pomocnaprom.getDate()+20);
var den = pomocnaprom.getDate();
var mesic = pomocnaprom.getMonth();
var rok = pomocnaprom.getFullYear();
dvacetdva.value = den+"."+mesic+"."+rok;
} )
$('#odep').keyup(function(){
var datum= odep.value.split(".",3);
var pomocna_datum = new Date(datum[2],datum[1],datum[0]);
//var den = parseInt(Math.Round(new Date().getTime()));
var unix_tmp = pomocna_datum.getTime()/1000;
var datum_tmp= pra_moc.value.split(".",3);
var pomocna_datum_tmp = new Date(datum_tmp[2],datum_tmp[1],datum_tmp[0]);
//var den = parseInt(Math.Round(new Date().getTime()));
var unix_tmp_tmp = pomocna_datum_tmp.getTime()/1000;
za_kolik.value =((((unix_tmp - unix_tmp_tmp)/60)/24)/60);
})
} ) ;
</script>
Hrabať sa mi v tom nechce. Radšej si pozri https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date a zastav sa pri metódach ako getYear, getMinutes, getXXX. Je to určite jednoduchšie a spoľahlivejšie ako ručný balast.
teď používám toto :
var datum1= odep.value.split(".",3);
var prvniDatum = new Date(parseInt(datum1[2]),parseInt(datum1[1]),parseInt(datum1[0]));
var datum2= pra_moc.value.split(".",3);
var druheDatum = new Date(parseInt(datum2[2]),parseInt(datum2[1]),parseInt(datum2[0]));
da_pre.value=druheDatum;
za_kolik.value=Math.abs((prvniDatum.getTime() - druheDatum.getTime()) / (24*60*60*1000));
Jediný problém je, že pokud zadám datum 1 = 1.1.2011 a datum2 = 1.2.2012 tak počet dnů mezitím mi to spočítá na 394, ovšem kolegovi v excelu to spočítá 396 ... jenomže občas se stane, že u některých měsíců to vyjde... má otázka je proč?
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Format datumu — založil Milan
Import z CSV formát datumu — založil kralik
Format not a string literal and no format arguments — založil nitrexx
Formát 1:2 — založil Counter
Moderátoři diskuze