代码之家  ›  专栏  ›  技术社区  ›  Hein Htet

第二次更改时引导日期选择器事件未更新enddatepicker startDate:值

  •  -1
  • Hein Htet  · 技术社区  · 8 年前
    "use strict";
    let nowDate = new Date();
    let today = new Date(nowDate.getFullYear(), nowDate.getMonth(), nowDate.getDate(), 0, 0, 0, 0);
    let enddate;
    
     $('#startdatepicker').datepicker({
          autoclose:true,
          todayHighlight: true,
          startDate:today
        }).on("changeDate",function(e){
    
            let present=new Date(e.date);
            enddate = new Date(present.getFullYear(), present.getMonth(), present.getDate(), 0, 0, 0, 0);
    
    
            $('#enddatepicker').datepicker({
             autoclose: true,
             startDate: enddate
            });
    
        });
    
    1 回复  |  直到 8 年前
        1
  •  0
  •   Developer    8 年前

    将onchange更改为“change”,并且您的日期不来自事件变量,您需要像这样“手动”获取它:

        "use strict";
    let nowDate = new Date();
    let today = new Date(nowDate.getFullYear(), nowDate.getMonth(), nowDate.getDate(), 0, 0, 0, 0);
    let enddate;
    
     $('#startdatepicker').datepicker({
          autoclose:true,
          todayHighlight: true,
          startDate:today
        }).on("change",function(e){
    
        var fromDate = $('#startdatepicker').val().split("/");
        let present=new Date(fromDate[2] , fromDate[1] - 1 , fromDate[0]);
        enddate = new Date(present.getFullYear(), present.getMonth(), present.getDate() + 1, 0, 0, 0, 0);
        alert(enddate);
    
            $('#enddatepicker').datepicker('setStartDate', enddate );
            });