Друзья помогите.
Нужно чтобы подсчитывалось количество дней,
есть три поля: дата с, дата по и собсна поле с выводом кол-ва дней.
Написал...
В мозилле и гуглхроме работает,
в ие и опере нет.
Точнее в ИЕ вообще NAN пишет,
в опере неправильно понимает параметры даты, например вместо месяца он понимает часы и т.д.
Изначально если прописывать даты в Date, например
Код:
|
<script>
function getdays() {
var Datavon = new Date(2009,4,3);
var Databis = new Date(2009,4,7);
var Tagen = Math.round((Databis.getTime() -
Datavon.getTime())/(1000*60*60*24));
document.form1.totaltag.value = Tagen+1;
}
</script> |
Все работает во всех броузерах
если писать с переменными, чтобы дата бралась из поля в которое ввел пользователь, начинаются косяки... (переменные Vond и Bisd не подхватываются функцией Date в IE, а в opere не так понимаются)
Код:
|
<script>
function getdays() {
var Vond = document.form1.von.value;
var Bisd = document.form1.bis.value;
var Datavon = new Date(Vond);
var Databis = new Date(Bisd);
var Tagen = Math.round((Databis.getTime() -
Datavon.getTime())/(1000*60*60*24));
document.form1.totaltag.value = Tagen+1;
}
</script> |
Как с этим бороться не знаю, помогите плиз.
полный код ниже
Код:
|
<html>
<body>
<form name="form1">
<input type="text" name="totaltag">
von<input name="von" value="2009,4,3"> bis<input name="bis"
value="2009,4,6">
<input type="button" onclick="getdays()" value="Счетадь">
</form>
<script>
function getdays() {
var Vond = document.form1.von.value;
var Bisd = document.form1.bis.value;
var Datavon = new Date(Vond);
var Databis = new Date(Bisd);
var Tagen = Math.round((Databis.getTime() - Datavon.getTime())/(1000*60*60*24));
document.form1.totaltag.value = Tagen+1;
}
</script>
</body>
</html> |
пример можно посмотреть здесь:
http://gdetoleto.ru/dcount.htm