【发布时间】:2011-08-15 05:43:51
【问题描述】:
在 JQuery datepicker 自定义 ui 中是否有任何功能,我可以通过传递月份名称和年份来获取总天数?
【问题讨论】:
标签: jquery
在 JQuery datepicker 自定义 ui 中是否有任何功能,我可以通过传递月份名称和年份来获取总天数?
【问题讨论】:
标签: jquery
只需使用常规 Javascript。不需要 jQuery。我不确定日期选择器返回什么,但如果你能得到像“2012”这样的年份和像“2”这样的月份:
var year = 2012;
var month = 2;
var days = Math.round(((new Date(year, month))-(new Date(year, month-1)))/86400000);
由于 2012 年是闰年,2 月是 2 月,因此上述代码日变为 29。
【讨论】:
var y = 2012;
var m = 2;
var x = new Date(y,m,1,-1).getDate();
alert(x);
输出:29
【讨论】:
您可以使用以下方法传递日期,使用开始日期和结束日期:
function parseDate(str) {
var mdy = str.split('/')
return new Date(mdy[2], mdy[0]-1, mdy[1]);
}
function daydifference(first, second) {
return (second-first)/(1000*60*60*24)
}
//example
alert(daydifference(parseDate($('#firstDate').val()), parseDate($('#endDate').val())));
您可以查看更多链接:
Jquery get total days from 2 inputs and display
How do I get the number of days between two dates in JavaScript?
【讨论】:
var y = 2012;
var m = 2;
var x = new Date(y,m,1,-1).getDate();
alert(x);
解释上面的答案...(无法评论,因为我的声誉是
它只是构造一个引用日期的新日期对象(记住月份值是 0-11,因此 m=2 表示三月)2012 年 3 月 1 日减去 1 小时,这反过来将给出 2014 年 2 月 29 日 23:00:00 和 .getDate () 做剩下的工作。
由于简单、空间和时间复杂度较低,我认为它比其他被赞成的答案更好。
【讨论】: