【问题标题】:Angular Strap: Date Range (Start Date Not Working)角带:日期范围(开始日期不工作)
【发布时间】:2014-11-13 00:35:48
【问题描述】:

我正在构建一个简单的角度搜索表单,它使用引导设计框架和 Angular Strap 模块(可在此处找到:http://mgcrea.github.io/angular-strap/)。

除了基于角度模型的动态日期范围之外,一切都很好。

我想要的非常简单:第二个日期输入从选择第一个输入的位置开始。这是不起作用的代码:

出发日期(第一次输入)[工作正常]

<input required name="dapart_date" class="form-control" id="leave_date" placeholder="mm/dd/yyyy" ng-model="flightSearchData.depart_date" data-date-format="MM/dd/yyyy" data-use-native="true" data-autoclose="true" data-min-date="today" bs-datepicker>

返回日期(第二次输入)[data-start-date 不起作用]

<input required name="return_date" class="form-control" id="return_date" placeholder="mm/dd/yyyy" ng-model="flightSearchData.return_date" data-date-format="MM/dd/yyyy" data-use-native="true" data-autoclose="true" data-min-date="{{flightSearchData.depart_date}}" data-start-date="{{flightSearchData.depart_date}}"  bs-datepicker>

data-min-date 工作正常,但 data-start-date 仅在我硬编码日期时才有效。

有什么建议吗...?

【问题讨论】:

标签: angularjs twitter-bootstrap date range angular-strap


【解决方案1】:

这不是一个解决方案,而是一种快速的解决方法,使这个日期选择器可以用于这种情况。

我添加了一个 dateFrom 手表并相应地更新 dateTo:

$scope.$watch('dateFrom', function() {
        if ($scope.dateFrom) {
            $scope.dateTo = new Date($scope.dateFrom.getTime()); 
            // Basic date manipulation                                              
            $scope.dateTo.setDate($scope.dateFrom.getDate() + 1);
        }
    });

它使 dateTo 日期选择器更改其视图以专注于选定的日期。它并不完美,但对我有用。

【讨论】:

  • 感谢您的跟进和回顾,并不是说我对 Angular 更有经验,这绝对是一个更好的解决方案,但我最终改用了这个基于 jquery 的 datepicker(可能最终会返回并重做它):eternicode.github.io/bootstrap-datepicker/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-07-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-14
  • 1970-01-01
  • 2015-05-24
相关资源
最近更新 更多