我正在使用beforeShowDay函数来突出显示与'used'日期的MySQL查询匹配的日期。
我的日期选择器设置如下:
dp = jQuery( "#datepicker" ).datepicker(
{
minDate: +1,
maxDate: "+1M",
dateFormat: 'yyyy-mm-dd',
beforeShowDay: function(date) {
q = q_dates[date];
}
}
);
问题是DATE的价值如下:2013年5月27日星期一00:00:00 GMT + 0700(东南亚标准时间)
我尝试过设置dateFormat。还尝试了date.toString('yyyy-mm-dd'),认为它可以像Javascript日期对象一样工作。
如何将DATE转换为格式yyyy-mm-dd?
答案 0 :(得分:1)
如何使用Date.js插件。查看他们的documentation。
还可以尝试使用以下代码:
date.getFullYear() + "-" + date.getMonth() + "-" + date.getDate() ;
修改强>
对于2位数的日期和月份,我建议您查看此SO question。
var date = new Date("Mon May 27 2013 00:00:00 GMT+0700 (SE Asia Standard Time)");
alert(date.getFullYear() + "-" + ("0" + (date.getMonth() + 1)).slice(-2) + "-" + ("0" + date.getDate()).slice(-2) );
答案 1 :(得分:0)
不需要任何额外的插件。使用内置的 jqueryui formatDate();
对于所有不同的格式,请查看它们的 docs
为了质量起见,我将在这里发布所有日期格式
Datepicker 日期格式
"mm/dd/yy"
"yy-mm-dd"
"d M, y"
"d MM, y"
"DD, d MM, yy"
"'day' d 'of' MM 'in the year' yy"
jqueryui
//return today's date
$.datepicker.formatDate("yy-mm-dd", $('#datepicker').datepicker("getDate"));
//alternatively you can use this syntax
jQuery.datepicker.formatDate('yy-mm-dd', 'getDate');
日期选择器
$('#datepicker').datepicker({
dateFormat: 'yy-mm-dd',
changeMonth: true,
changeYear: true,
beforeShowDay : function (date){
//format date
var jquerydate = $.datepicker.formatDate("yy-mm-dd", date);
//alternative syntax
var jquerydate = jQuery.datepicker.formatDate('yy-mm-dd', date);
}
});