我有以下代码
datePicker.change(function(){
dateSet = datePicker.val();
dateMinimum = dateChange();
dateSetD = new Date(dateSet);
dateMinimumD = new Date(dateMinimum);
if(dateSetD<dateMinimumD){
datePicker.val(dateMinimum);
alert('You can not amend down due dates');
}
})
Run Code Online (Sandbox Code Playgroud)
dateSet ="01/07/2010"dateMinimum ="23/7/2010"
两者都是英国格式.比较日期对象时,dateSetD应小于dateMinimumD但不是.我认为这与我使用英国日期dd/mm/yyyy的事实有关.我需要改变什么来使这个工作?
T.J*_*der 12
JavaScript Date构造函数不解析该形式的字符串(无论是英国格式还是美国格式).有关详细信息,请参阅规范,但您可以逐个部分构建日期:
new Date(year, month, day);
Run Code Online (Sandbox Code Playgroud)
MomentJS可能对于灵活处理日期很有用.(此答案以前与此lib相关联,但在很长一段时间内都没有得到维护.)
wog*_*les 12
这就是我最终做到的方式:
var lastRunDateString ='05/04/2012'; \\5th april 2012
var lastRunDate = new Date(lastRunDateString.split('/')[2], lastRunDateString.split('/')[1] - 1, lastRunDateString.split('/')[0]);
Run Code Online (Sandbox Code Playgroud)
请注意月份索引是从0到11.
var dateString ='23/06/2015';
var splitDate = dateString.split('/');
var month = splitDate[1] - 1; //Javascript months are 0-11
var date = new Date(splitDate[2], month, splitDate[0]);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
20386 次 |
| 最近记录: |