【问题标题】:From and To date picker are allow to choose the date with in 'x' months从和到日期选择器允许选择“x”个月内的日期
【发布时间】:2017-03-28 07:56:34
【问题描述】:
<div class="col-md-4 col-sm-6">
  <div class="row spacer">
    <label for="fromdate" class="col-md-4">Date : </label>
    <div  class="col-md-8"> 
      <div class="row">
        <div  class="col-md-6"> 
          <input type="text" autofocus="autofocus" class="form-control input-sm" size="10" uib-datepicker-popup="{{'dd-MM-yyyy'}}" ng-model="srchctrl.startDate" is-open="srchctrl.status.openedS" datepicker-options="srchctrl.dateOptions" uib-tooltip="dd-MM-yyyy" date-disabled="srchctrl.disabled(date)" show-weeks='false' close-text="Close" ng-click="srchctrl.open('S')" placeholder="dd-mm-yyyy" alt-input-formats="srchctrl.altInputFormats" ng-change="srchctrl.validateDateRange('main')"/>
          <button type="button" class="datepicker-btn" ng-click="srchctrl.open('S')"><i class="fa fa-calendar"></i></button>
        </div>
        <div class="col-md-6">                            
          <input type="text" class="form-control input-sm"  size="10" uib-datepicker-popup="{{'dd-MM-yyyy'}}" ng-model="srchctrl.endDate" is-open="srchctrl.status.openedE"  datepicker-options="srchctrl.dateOptions" uib-tooltip="dd-MM-yyyy" date-disabled="srchctrl.disabled(date)" show-weeks='false' close-text="Close" ng-click="srchctrl.open('E')"  placeholder="dd-mm-yyyy" alt-input-formats="srchctrl.altInputFormats"  ng-change="srchctrl.validateDateRange('main')"/>
          <button type="button" class="datepicker-btn"  ng-click="srchctrl.open('E')" ><i class="fa fa-calendar"></i></button>
        </div>
      </div>
    </div>
  </div>
</div>

两个日期选择器都允许选择“x”个月内的日期。

假设 x 是 3,那么如果我选择 15-01-2017,那么其他日期将只到 15-04-2017。

如何在日期选择器中实现这一点?

【问题讨论】:

    标签: angularjs datepicker angular-ui-bootstrap


    【解决方案1】:

    使用最大日期属性

     <div class="col-md-4 col-sm-6">
                                  <div class="row spacer">
                                    <label for="fromdate" class="col-md-4">Date : </label>
                                    <div  class="col-md-8"> 
                                      <div class="row">
                                       <div  class="col-md-6"> 
                                          <input type="text" autofocus="autofocus"  class="form-control input-sm"  size="10" uib-datepicker-popup="{{'dd-MM-yyyy'}}" ng-model="srchctrl.startDate" is-open="srchctrl.status.openedS"  datepicker-options="srchctrl.dateOptions" uib-tooltip="dd-MM-yyyy" date-disabled="srchctrl.disabled(date)" show-weeks='false' close-text="Close" ng-click="srchctrl.open('S')"  placeholder="dd-mm-yyyy"  alt-input-formats="srchctrl.altInputFormats"  ng-change="srchctrl.validateDateRange('main')"/>
                                          <button type="button" class="datepicker-btn" ng-click="srchctrl.open('S')"><i class="fa fa-calendar"></i></button>
                                       </div>
                                       <div  class="col-md-6">                            
                                          <input type="text" class="form-control input-sm"  size="10" uib-datepicker-popup="{{'dd-MM-yyyy'}}" ng-model="srchctrl.endDate" is-open="srchctrl.status.openedE"  datepicker-options="srchctrl.dateOptions" uib-tooltip="dd-MM-yyyy" date-disabled="srchctrl.disabled(date)" show-weeks='false' close-text="Close" ng-click="srchctrl.open('E')"  placeholder="dd-mm-yyyy" alt-input-formats="srchctrl.altInputFormats"  ng-change="srchctrl.validateDateRange('main')"/>
                                          <button type="button" class="datepicker-btn"  ng-click="srchctrl.open('E')"  max-Date="maxDate"><i class="fa fa-calendar"></i></button>
                                       </div>
                                      </div>
                                    </div>
                                    </div>
                                </div>
    

    在控制器中

    $scope.maxDate=srchctrl.startDate;
    

    //在控制器opon函数srchctrl.open('E')

    var month=srchctrl.startDate.getMonth();
    
    $scope.maxDate.setMonth(month+3);
    

    【讨论】:

      猜你喜欢
      • 2017-04-22
      • 1970-01-01
      • 2010-11-21
      • 1970-01-01
      • 2012-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多