使用Javascript返回来自输入类型日期的不正确日期
问题描述:
当我选择一个日期说12/03/2014它回调Tue Dec 02 2014 16:00:00 GMT-0800(太平洋标准时间)前一天我输入?使用Javascript返回来自输入类型日期的不正确日期
<script>
function getAge() {
var today = new Date();
var birthDate = new Date(document.forms["name"]["birth"].value);
var age = today.getFullYear() - birthDate.getFullYear();
var m = today.getMonth() - birthDate.getMonth();
if (m < 0 || (m === 0 && today.getDate() < birthDate.getDate()+1)) {
age--;
}
document.getElementById('age').innerHTML = birthDate;
}
</script>
<form name='name' onsubmit='return false'>
<input type="date" name="birth">
<p id='age'></p>
<button onclick='getAge()'>check</button>
</form>
答
不正确的日期是由于您的时区设置。这是GMT-8。 考虑使用UTC:http://www.w3schools.com/jsref/jsref_toutcstring.asp
+0
谢谢你的链接 – Arthur 2014-12-03 09:27:34
这是一个时区问题。 – Barmar 2014-12-03 09:10:44
我在南非,当我运行代码时,它给了我正确的选择日期。 http://jsbin.com/luvolaboba/1/edit – user3811714 2014-12-03 09:24:07
哦,我看到谢谢 – Arthur 2014-12-03 09:26:51