更新 Bootstrap 日期选择器范围

Update Bootstrap datepicker range

我做了一个 JS Fiddle : https://jsfiddle.net/12uop4ud/

$(function(){
    var mode_calcul = 0;

    $('#zone_input .input-daterange').datepicker({
        language: "fr",
        format: "yyyy-mm-dd",
        minViewMode: 0,
    });

    $('#minViewMode').on('change',function(){

        mode_calcul = parseInt($(this).val());

        $('#zone_input .input-daterange').datepicker('remove').find('input').val('');
        if(mode_calcul == 0){
            $('#zone_input .input-daterange').datepicker({
                language: "fr",
                format: "yyyy-mm-dd",
                minViewMode: 0
            });     
        }else{
            $('#zone_input .input-daterange').datepicker({
                language: "fr",
                format: "yyyy-mm",
                minViewMode: 1
            });     
        }
    });
});

我有一个日期选择器范围和一个 select 输入。 当您将 select 输入更改为 "Semaine" 到 "Mois"(每周更改为每月)时,我想更改所有日期选择器的 "view Mode"。

我们来做个测试:

这时候就可以了

此时我们可以看到datepicker视图在"Month view"

中发生了变化

此时,我们看到第一个问题:选择的日期格式如下"YYYY-MM-DD"...但是当日期选择器关闭时,日期自动以良好的格式 YYYY-MM...

如果您 select "Semaine"(每周)在 select 输入中,所有字段都被清除

看到结束日期选择器重新加载结束日期,但格式错误...

你能帮帮我吗?

谢谢!

您只需要在设置之前再次将选项设置为空即可。

我添加了以下功能并重新设置之前的日期:

function resetDate(inputDate){
    inputDate.datepicker( "option" , {
    minDate: null,
    language: null,
    format: null, 
    minViewMode: null, 
    maxDate: null} );
}

演示

希望对您有所帮助。