我使用beforeShowDay函数来突出显示与MySQL查询'used'日期匹配的日期。
我的日期选择器设置如下:
dp = jQuery( "#datepicker" ).datepicker(
{
minDate: +1,
maxDate: "+1M",
dateFormat: 'yyyy-mm-dd',
beforeShowDay: function(date) {
q = q_dates[date];
}
}
);
问题是DATE的值看起来像这样:Mon May 27 2013 00:00:00 GMT+0700(东南亚标准时间)
我试过设置日期格式。我也试过date. tostring ('yyyy-mm-dd'),认为它会像Javascript的日期对象一样工作。
如何将DATE转换为yyyy-mm-dd格式?
如何使用Date.js插件。查看他们的文档。
也可以尝试使用下面的代码:
date.getFullYear() + "-" + date.getMonth() + "-" + date.getDate() ;
编辑:对于2位数的日期和月份,我建议看一下这个SO问题。
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) );
无需任何额外插件。使用内置的jqueryui formatDate();
查看所有不同格式的文档
为了保证质量,我将把所有的日期格式贴在这里
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').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);
}
});