setDefaults for jQuery datetimepicker addon

时间:2014-04-15 08:29:52

标签: javascript jquery datetimepicker

我使用jQuery timepicker插件扩展jQuery datepicker,这样我就可以拥有日期+时间选择器。 link to the addon

为了设置格式化和区域设置等默认设置,我在datepicker和timepicker上使用setDefaults选项。我称之为datetimepicker,一切都很好。

// Working
jQuery.datepicker.setDefaults({buttonImage: '../images/cal.gif'});
jQuery.timepicker.setDefaults({buttonImage: '../images/time.png'});
jQuery("#datepicker").datepicker();
jQuery("#timepicker").timepicker();
jQuery("#datetimepicker").datetimepicker();

日期选择器将显示日历图像,时间戳将显示时间图像。问题是我希望datetimepicker显示日历图像。

我尝试了以下内容:

// Not working
jQuery.datepicker.setDefaults({buttonImage: '../images/cal.gif'});
jQuery.timepicker.setDefaults({buttonImage: '../images/time.png'});
jQuery.datetimepicker.setDefaults({buttonImage: '../images/cal.gif'});
jQuery("#datepicker").datepicker();
jQuery("#timepicker").timepicker();
jQuery("#datetimepicker").datetimepicker();

但是这会导致以下错误:

TypeError: jQuery.datetimepicker is undefined

我知道jQuery("#datetimepicker").datetimepicker({buttonImage: '../images/cal.gif'});修复了问题,但这意味着我必须在每次通话时更改图像。我需要它像datepicker和timepicker一样默认。

2 个答案:

答案 0 :(得分:1)

看起来datetimepicker-plugin不支持默认设置,但您可以实现一种变通方法。只需将其添加为JQuery-Object本身:

(function ($) {
    $.datetimepicker.defaults = {
       buttonImage: '../images/cal.gif'
    };

    $.fn.datetimepicker = function (options) {
        var settings = $.extend($.datetimepicker.defaults, options);
    }
});

$.datetimepicker.defaults.buttonImage = '../images/someimage.gif';

$('.dtpicker').datetimepicker();

注意:这是未经测试的,只是一个想法,我建议你在jsfiddle上玩。

答案 1 :(得分:0)

该插件项目似乎已死。上一次提交是3年前。我发布了此答案,以将此问题标记为已解决。