繁体   English   中英

Bootstrap Datepicker 重新初始化日期格式

[英]Bootstrap Datepicker re-initialize date format

我有 Bootstrap 日期选择器,默认格式为mm/dd/yyyy ,我选择了在哪里可以将格式从 mm/dd/yyyy更改为dd/mm/yyyy并反转。

在选择更改时,我想更改日期选择器的格式。

我试过

find('#options-date_format').on('change', function(){
    $("#picker").datepicker({format: formatDate})
});

但它不起作用,我找不到这样做的方法。 还尝试删除/销毁日期选择器,但出现 javascript 错误。

我认为以下方法有效,

1,每当更改格式时,取消附加然后重新附加回元素。

$("#dp3").datepicker();  // initialization
$('select').on('change', function () {
    var d = $('select option:selected').text();
    if (d == 2) {
        $("#dp3").datepicker('remove'); //detach
        $("#dp3").datepicker({          //re attach
            format: "dd/mm/yyyy"
        })
    } else {
        $("#dp3").datepicker('remove'); //detach
        $("#dp3").datepicker({          //re attach
            format: "mm/dd/yyyy"
        })
    }
});

JSFiddle

好的,我解决了这个扩展 bootstra-datepicker.js

setFormat: function(format) {
    this.format = DPGlobal.parseFormat(format);
}

并调用该函数

find('#options-date_format').on('change', function(){
    $("#picker").datepicker('setFormat', newFormat);
});

当您有许多日期选择器时,您可以使用类选择器并重置所有日期选择器,并使用该类进行初始化。 下面的代码示例。 在示例中,所有输入元素都将具有类date-picker

function resetDatePickers(){
    $('.date-picker').each(function(index){
       $(this).datepicker('remove');
    });

    $('.date-picker').datepicker({
        format: "dd/mm/yyyy",
        startView: 2,
        orientation: "top auto"
    });
}


resetDatePickers();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM