2013-05-15 29 views
4

我想仅使用jQuery datepicker来解析和格式化日期,但在我的实际页面上我不想实现任何datepicker。jQuery Datepicker - 如何获取/读取默认设置

现在,我设置了datepicker默认值,例如,

$.datepicker.setDefaults($.datepicker.regional["de-DE"]); 

现在我的问题是,如何读取这个默认的日期格式,没有任何datepicker对象?的像 思考......

$.datepicker.getDefaults('dateFormat'); 

...我返回字符串 “DD.MM.YYYY” - 可能吗?

+0

通过读取默认的日期格式,你的意思是由jQueryUI设置? – Broxzier

+0

是的,我在这里设置:$ .datepicker.setDefaults($。datepicker.regional [“de-DE”]); – Loonis

回答

1

我不认为这是一个很好的答案,但这是我找到解决问题的方法。 我正在将当前(默认)区域设置复制到另一个索引 - [“local”],并在需要的任何地方使用它。

如果有人有更好的方式做到这一点,请随时发布答案。

在页面加载:

$(function() { 
    // Default locale = en-GB 
    $.datepicker.setDefaults($.datepicker.regional["en-GB"]); 

    // Copying to a new index = local 
    $.datepicker.regional["local"] = $.datepicker.regional["en-GB"]; 
}); 

当我需要参考任何设置:

var month = $.datepicker.regional["local"].monthNames[myMonth]; 

var month = $.datepicker.regional.local.monthNames[myMonth]; 
3

的至少在JQuery UI 1.11中,当前的默认值存储在$.datepicker._defaults中。当然,由于这是一个没有记录的内部变量,因此它可能会发生变化。

或者,存储保存区域值的单独变量region。当你调用setDefaults,还存放了region

var region="de-DE"; 
$.datepicker.setDefaults($.datepicker.regional[region]); 

然后你就可以查询与$.datepicker.regional[region].dateFormat

0

值嗨,你可以得到它像this`

$('#datepicker').datepicker({ 
     beforeShowDay : function(date) { 
      var monthsArr = $(this).datepicker('option', 'monthNamesShort'); 
      console.log(monthsArr); 
     } 
}); 
+0

虽然此代码片段可能会解决问题,但[包括解释](http://meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers)确实有助于提高帖子的质量。请记住,您将来会为读者回答问题,而这些人可能不知道您的代码建议的原因。 – secelite

相关问题