更新Bootstrap datepicker范围

时间:2015-10-02 15:53:23

标签: jquery bootstrap-datepicker

我做了一个JS小提琴: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
            });     
        }
    });
});

我有一个日期选择器范围和一个选择输入。 当您将选择输入更改为" Semaine"到" Mois" (每周到每月),我想更改"查看模式"所有日期选择器。

让我们做一个测试:

  • 在开始日期选择器中,选择一个日期。
  • 在结束日期选择器中,选择其他日期。

此时,还可以

  • 将选择输入更改为" Mois" (每月)
  • 清除了开始和结束日期选择。
  • 点击开始日期选择器

目前,我们可以看到日期选择器视图在"月视图"

中已更改
  • 选择日期。

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

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

  • 选择开始日期。

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

你能帮帮我吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

在设置之前,您只需要再次将选项设置为null。

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

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

<强>样本

我希望它有所帮助。