Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在beforeShowDay函数中更改日期选择器日期格式_Javascript_Jquery Ui Datepicker - Fatal编程技术网

Javascript 在beforeShowDay函数中更改日期选择器日期格式

Javascript 在beforeShowDay函数中更改日期选择器日期格式,javascript,jquery-ui-datepicker,Javascript,Jquery Ui Datepicker,我使用beforeShowDay函数突出显示与MySQL查询“已使用”日期匹配的日期 我的日期选择器设置如下所示: dp = jQuery( "#datepicker" ).datepicker( { minDate: +1, maxDate: "+1M", dateFormat: 'yyyy-mm-dd', beforeShowDa

我使用beforeShowDay函数突出显示与MySQL查询“已使用”日期匹配的日期

我的日期选择器设置如下所示:

dp = jQuery( "#datepicker" ).datepicker(
                                { 
                                    minDate: +1, 
    maxDate: "+1M",
    dateFormat: 'yyyy-mm-dd',
    beforeShowDay: function(date) {
                                                          q = q_dates[date];
                                                    }
                                                }
                                                );
问题在于日期的值如下所示:2013年5月27日星期一00:00:00 GMT+0700(东南亚标准时间)

我试过设置日期格式。还尝试了date.toString('yyyy-mm-dd'),认为它可以像Javascript日期对象一样工作

如何将日期转换为yyyy-mm-dd格式?

如何使用插件。看看他们的网站

还可以尝试使用以下代码:

date.getFullYear() + "-" + date.getMonth() + "-" + date.getDate() ;
编辑:

对于两位数的日期和月份,我建议看一下这个


不需要任何额外的插件。使用内置的jqueryui
formatDate()

对于所有不同的格式,请查看它们的

为了质量起见,我将在这里发布所有日期格式

日期选择器日期格式

"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);

}

});

谢谢你的建议。我在某处看到了第二个。但是月份和日期必须是两位数的格式,我不知道有什么快速、干净的方法可以做到这一点。仅仅为了在一个地方重新格式化日期,添加另一个插件似乎有点过头了。我真的很惊讶没有一个简单的格式化命令可以被调用来实现这一点。谢谢。我正要评论说,我在这里找到了一个类似的解决方案:@Lee通常会发生这种情况,当我们搜索时,我们将无法找到确切的链接。发布问题后,我们将找到答案的确切链接:)是的,非常正确。有时这几乎令人尴尬。
$('#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);

}

});