jquery datepicker和jquery掩码不起作用

时间:2014-08-05 10:32:52

标签: javascript jquery jquery-ui datepicker maskedinput

我有一段使用jquery datepickerjquery masked input的代码。

jQuery(function($) {
    $(document).on('click', '#date', function () { 
        var me = $("#date");   
        me.datepicker({
            showOn: 'focus',
            altFormat: "mm/dd/yy",
            dateFormat: "mm/dd/yy",
            minDate: '12/12/2000',
            maxDate: '12/12/2020'
        }).focus();
        me.mask('99/99/9999');
    }).on('select', '#date', function () {
        var me = $("#date");
        me.mask('99/99/9999');
    });
});

JSFiddle

代码使用jquery on,因为应用程序中的input元素会动态添加到页面中。屏蔽输入也是从select事件注册的,因为用户可以通过按上一个输入的标签来进入输入。

它不适用于Firefox 31,但可以在Chrome 36IE 11上正常使用。 当输入字段为空时,用户应该能够在输入元素中键入任何内容(基于屏蔽过滤器)。

请告诉我代码有什么问题。

1 个答案:

答案 0 :(得分:0)

只需将select更改为focus即可修复,我不记得为什么我首先使用select

jQuery(function($) {
    $(document).on('click', '#date', function () { 
        var me = $("#date");   
        me.datepicker({
            showOn: 'focus',
            altFormat: "mm/dd/yy",
            dateFormat: "mm/dd/yy",
            minDate: '12/12/2000',
            maxDate: '12/12/2020'
        }).focus();
    }).on('focus', '#date', function () {
        var me = $("#date");
        me.mask('99/99/9999');
    });
});

Fixed JSFiddle