Javascript 为什么更改jQuery日期选择器的日期格式失败?
我知道这里有很多关于更改datepicker dateFormat的问题,但我严格按照说明操作,它们似乎没有任何效果。以下是其他答案中建议的确切代码:Javascript 为什么更改jQuery日期选择器的日期格式失败?,javascript,jquery,jquery-ui,datepicker,Javascript,Jquery,Jquery Ui,Datepicker,我知道这里有很多关于更改datepicker dateFormat的问题,但我严格按照说明操作,它们似乎没有任何效果。以下是其他答案中建议的确切代码: $(document).ready(function() { $('#datepicker').datepicker({ dateFormat: 'dd-mm-yy' }); }); 然而,当我运行它,并使用alert($(“#datepicker').datepicker(“getDate”))测试datepicker值时 我以不希望
$(document).ready(function() {
$('#datepicker').datepicker({ dateFormat: 'dd-mm-yy' });
});
然而,当我运行它,并使用alert($(“#datepicker').datepicker(“getDate”))测试datepicker值时代码>
我以不希望的格式返回日期!这是非常令人困惑的。我有什么不对吗?请参阅中描述的行为
编辑:更令人困惑的是,如果我使用alert($(“#datepicker”).datepicker('option','dateformat'))读取dateformat代码>
。。。返回的日期格式正确,即使调用getDate
不会以所需格式返回日期。请参见日期格式设置,了解在应用选择器的文本框中显示的格式
看看我更新的小提琴版本:
正如您所看到的,当您在文本框中单击并选择一个日期时,它是您指定的格式。
据我所知,getDate函数返回一个javascript日期
编辑:
如果您想格式化javascript日期的输出,则需要使用自定义脚本或类似date.js的库(我在这方面取得了很大的成功)
有了它,你可以做如下事情:
$('#datepicker').datepicker("getDate").toString('dd-MM-yyyy');
要以您喜欢的格式获取日期,我同意它返回javascript日期。您可以使用此实用程序功能:
$.datepicker.formatDate(格式、日期、设置)-将日期格式化为具有指定格式的字符串值
这里发生的是getDate,它返回一个javascript日期对象。您将看到date对象的toString方法
试试这个:
$(document).ready(function() {
$('#datepicker').datepicker({
onSelect: function(dateText, inst) { alert(dateText) }
});
$('#datepicker').datepicker( "option" , 'dateFormat', 'yyyy-mm-dd' )
});
以防有人像我一样寻找答案。以下是工作代码:
<script>
$(function() {
$( "#datepicker" ).datepicker({inline: true, dateFormat:'yy-mm-dd'}); });
</script>
$(函数(){
$(“#datepicker”).datepicker({inline:true,dateFormat:'yy-mm-dd'});});
这很有道理。jQueryUI文档只声明getDate
“返回日期选择器的当前日期”,我认为这意味着日期选择器将在其文本框中输入相同的值。谢谢你的回答,很方便!如果您不需要date.js来做其他事情,那么使用date.js可能是更好的选择。