【问题标题】:jquery datepicker auto advance end datejquery datepicker自动提前结束日期
【发布时间】:2016-02-04 16:10:00
【问题描述】:

我正在使用 jQuery 日期选择器,并希望 end datestart date 自动提前 1 天

到目前为止,我已经获得了以下代码,它几乎可以工作,只是没有在日期中添加 +1:

$(function() {
    $( "#datepicker-8" ).datepicker({
        prevText:"click for previous months",
        nextText:"click for next months",
        showOtherMonths:true,
        selectOtherMonths: false,
        dateFormat:"dd-mm-yy",
        onClose: function( selectedDate ) {
            $( "#datepicker-9" ).datepicker( "option", "minDate", selectedDate );
            var fecha = $(this).datepicker('getDate');
            $("#datepicker-9").datepicker("setDate", new Date(fecha.getTime()));
            $("#datepicker-9").datepicker("setDate", "+1d");
        }
    });
    $( "#datepicker-9" ).datepicker({
        prevText:"click for previous months",
        nextText:"click for next months",
        defaultDate: "+1d",
        dateFormat:"dd-mm-yy",
        onClose: function( selectedDate ) {
            $( "#datepicker-8" ).datepicker( "option", "maxDate", selectedDate );
        }
    });
});

这是在这里和其他地方找到的信息的组合,但我似乎无法完成它。我还要求保留 minDatemaxDate 功能,但这些功能运行良好。

非常感谢

【问题讨论】:

    标签: jquery datepicker jquery-ui-datepicker


    【解决方案1】:

    试试这个

    $( "#datepicker-8" ).datepicker({
      prevText:"click for previous months",
      nextText:"click for next months",
      showOtherMonths:true,
      selectOtherMonths: false,
      dateFormat:"dd-mm-yy",
      onClose: function( selectedDate,inst ) {
        console.log(selectedDate);
        var parts = selectedDate.split('-');
        var mydate = new Date(parts[2], (parts[1] - 1), parts[0]);
        console.log( "my date:"+ mydate );
        mydate.setDate(mydate.getDate() + 1);
        $( "#datepicker-9" ).datepicker( "setDate", mydate );
      }
    });
    
    $( "#datepicker-9" ).datepicker({
      prevText:"click for previous months",
      nextText:"click for next months",
      defaultDate: "+1d",
      dateFormat:"dd-mm-yy",
      onClose: function( selectedDate ) {
        $( "#datepicker-8" ).datepicker( "option", "maxDate", selectedDate );
      }
    });
    

    这是一个有效的fiddler

    【讨论】:

    • 完美!谢谢。我不得不将它结合起来以实现 minDate Maxdate 过滤器,但这很好用。
    • 太棒了!希望一切都好。顺便说一句,您可以将其标记为答案/投票以关闭它吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-10
    • 2017-04-22
    • 2021-07-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多