如何在Bootstrap Date Picker中

时间:2015-11-25 17:30:45

标签: javascript jquery twitter-bootstrap datetime datepicker

我在我的网站上使用以下日期选择器来选择开始和结束日期:

https://bootstrap-datepicker.readthedocs.org/en/latest/index.html

规则是:

  • 开始日期可以是今天到+30天之间,不再是
  • 结束日期在所选开始日期后不超过1年

所以当表单加载时,我将endDate选项设置为“+ 1y -1d”,效果很好。但是,如果客户选择的开始日期为+30天,我需要第二个字段的endDate选项再次扩展到“当前开始日期+ 1y -1d”。

我已经启动了代码,但实际上并不确定如何实现这一目标:

<script type="text/javascript">
    $(function() {

        $(".startdate").datepicker({
            format: 'd MM yyyy',
            startDate: '+0d',
            endDate: '+30d',
            autoclose: true,
            startView: 0,
            minViewMode: 0,
            todayHighlight: true,
            orientation: "top"
        });
        $(".enddate").datepicker({
            format: 'd MM yyyy',
            startDate: '+1d',
            endDate: '+1y -1d',
            autoclose: true,
            startView: 0,
            minViewMode: 0,
            todayHighlight: true,
            orientation: "top"
        });

        $("#startdate").change(function() {

            var startdate = new Date (  $("#startdate").val() ) ;
            //alert(startdate);
            var newendatemaximum;

            $(".enddate").datepicker({
                endDate: ???????
            });
        });

    });
</script>

正在进行中的解决方案:

$(".startdate").change(function() {
            //alert("start date change");
            var newendatemaximum = new Date (  $(".startdate").val() ) ;
            newendatemaximum.setYear(newendatemaximum.getFullYear() + 1);
            alert(newendatemaximum);
            $(".enddate").datepicker("option", "endDate", newendatemaximum);
        });

1 个答案:

答案 0 :(得分:0)

您不必使用json来设置datepicker选项。您可以直接设置它们。获得要用作javascript日期的新的最大日期后,您可以直接设置该选项:

{
  "require" : {
    "facebook/php-sdk-v4" : "4.0.*",
    "league/oauth2-client": "Needed for Gmail's XOAUTH2 authentication system"
  }
}