В общем сейчас ситуация следующая:
Добавил к инпутам выплывающий календарь, чтобы руками юзер даты не забивал.
Получился вот такой код:
Код:
<html>
<head>
<link rel='stylesheet' href='calendar.css' type='text/css'>
<script type='text/javascript' src='calendar.js'></script>
</head>
<body>
date1<input name="data11" class="date" id="date1"><br>
date2<input name="data21" class="date" id="date2"><br>
<script type="text/javascript">
var my_new;
my_new = my_day();
function my_day() {
var alt = document.getElementById('date1').value;
var neu = document.getElementById('date2').value;
var d = neu.getTime() - alt.getTime();
return d/(1000*60*60*24);
}
</script>
<script type="text/javascript">
document.write(my_new);
</script>
</body>
</html>
Формат даты изменился, теперь в инпут попадает такая дата "26-02-2012", благодаря всплывающему календарю.
Но все равно функция выдает "undefined".
Как это выглядит вы можете увидеть на скрине.
Подскажите, что сделать, чтобы функция нормально работала и выводила разницу между датами? Как привести формат даты к нужному виду?
-----------------------------------
Нашел в сети еще вот такую вещь:
Код:
String d1 = " 23.11.2011";
String d2 = " 25.11.2011";
SimpleDateFormat format = new SimpleDateFormat("dd.MM.yyyy");
Date date1 = null;
Date date2 = null;
try {
date1 = format.parse(d1);
date2 = format.parse(d2);
} catch (Exception e) {
e.printStackTrace();
}
long difference = date1.getTime() - date2.getTime();
long days = difference / (24 * 60 * 60 * 1000);
System.out.println("days=" + days);
Но тоже у меня не работает......
-----------------------------------
Пробовал также такую вещь:
Код:
String a = "27.03.2011";
String b = "28.03.2011";
DateFormat da = new SimpleDateFormat("dd.MM.yyyy");
DateFormat db = new SimpleDateFormat("dd.MM.yyyy");
long a1 = da.parse(a).getTime();
long b1 = db.parse(b).getTime();
long t = ((b1-a1))/(1000*24*3600);
И ни фига!
-----------------------------------
Блин, ни чего не получается, явакодеры где вы?