格式化 jQuery UI 日期选择器
Posted
技术标签:
【中文标题】格式化 jQuery UI 日期选择器【英文标题】:Formatting out of a jQuery UI datepicker 【发布时间】:2011-01-30 00:29:23 【问题描述】:我在尝试上的输出时遇到问题。
我希望日期格式为“ISO 8601”格式,如下所述:
http://jqueryui.com/demos/datepicker/#date-formats
这是我的代码的样子:
$.datepicker.setDefaults($.datepicker.regional['nl']);
$('.datepicker').datepicker('option', dateFormat: 'yy-mm-dd' );
【问题讨论】:
【参考方案1】:你的选项设置器格式有点不对,试试这个:
$('.datepicker').datepicker('option', 'dateFormat', 'yy-mm-dd');
See the options pane on that page for how to set each one in this way
在创建选择器之前全局执行此操作时,请执行以下操作:
$.datepicker.setDefaults($.datepicker.regional['nl']);
$.datepicker.setDefaults( dateFormat: 'yy-mm-dd' );
//Later..
$('.datepicker').datepicker();
另外,请确保包含您的区域文件,否则 $.datepicker.regional['nl']
没有任何意义,在尝试将默认设置为您的区域之前需要包含此文件:http://jquery-ui.googlecode.com/svn/trunk/ui/i18n/
【讨论】:
我试过了,它不起作用。我正在执行此步骤: $('#datepicker').datepicker('option', dateFormat: $(this).val());在我给你的演示链接的源视图中 @Sam - 执行此操作时日期选择器是否打开?这只会影响$('.datepicker')
上创建的日期选择器,如果您在创建之前在页面 init 上执行此操作,请执行以下操作:$.datepicker.setDefaults( dateFormat: 'yy-mm-dd' );
(在您当前的 setDefaults 调用之后)
谢谢!这样做了: $.datepicker.setDefaults($.datepicker.regional['nl']); $.datepicker.setDefaults( dateFormat: 'yy-mm-dd' ); $('.datepicker').datepicker();
@Sam - 非常棒,+1,欢迎来到 SO,您现在可以对事情进行投票了 :) 我会编辑这个答案,让下一个遇到问题的人更快地找到解决方案
知道了!最好在您的最终答案中提及人们仍然必须包含 datepicker 的区域文件。位于此处:jquery-ui.googlecode.com/svn/trunk/ui/i18n【参考方案2】:
$( "#end_date" ).datepicker( dateFormat: 'yy-mm-dd' );
对我有用
【讨论】:
也为我工作 (jQuery 1.8.2 / UI 1.9.1) - 使用日期选择器类而不是 ID 这是一个很好的答案,因为我使用了日历图标,传递了其他选项,而这个答案可以解决这个问题。【参考方案3】:你也可以用更短的方式:
$.datepicker.setDefaults(jQuery.extend( $.datepicker.regional['nl'], 日期格式:'yy-mm-dd' ));【讨论】:
以上是关于格式化 jQuery UI 日期选择器的主要内容,如果未能解决你的问题,请参考以下文章
带有手动输入和动态最小日期的 jQuery UI 日期选择器