2016-06-06 94 views
0

我在我的页面中执行daterange picker。但它不起作用。请有人指出我做错了什么,或者我错过了什么。daterangepicker没有被触发

CSHTML:

<div class="has-feedback" > 
    <input type="text" id="txtDateRange" 
      class="form-control input-md" name="RangeDates" 
      placeholder="Select Range" 
      ng-model="Model.RageDates"> 
    <span class="form-control-feedback"><i class="glyphicon glyphicon-calendar fa fa-calendar"></i></span> 
    <span style="color: #a94442" > 
     <label class="control-label" class="has-error" ng-show="RangeDates.$invalid">Required.</label> 
    </span> 
</div> 

JS:

DashBoardModule.controller('DashBoardController', ['$scope','$filter', 'DashBoardModuleService', function ($scope,$filter, DashBoardModuleService) { 

    $('#txtDateRange').on('apply.daterangepicker', function (ev, picker) { 
     $scope.isRefreshing = true; 
     $scope.Model.introductoryPeriodEnd = $filter('date')(new Date(picker.endDate), dateFormat); 
     $scope.Model.introductoryPeriodStart = $filter('date')(new Date(picker.startDate), dateFormat); 
     $scope.Model.typeAvailability = picker.chosenLabel === "Custom Range" ? "Custom" : picker.chosenLabel; 
     $scope.$apply();  
    }); 

    angular.element(document).ready(function() { 
     var dateConfiguration = new Date(); 
     $('#txtDateRange').daterangepicker({ 
      ranges: { 
       'Next Week': [new Date(), dateConfiguration.setDate(dateConfiguration.getDate() + 6)], 
       'Next 2 Weeks': [new Date(), dateConfiguration.setDate(dateConfiguration.getDate() + 8)] 
      }, 
      format: dateFormat, 
      autoApply: true 
     }); 
    });  
}]); 

_layout:

<!-- Range Date Picker --> 
<link href="~/Scripts/Controls/DateRangePicker/daterangepicker.css" rel="stylesheet" /> 
<script src="~/Scripts/Controls/DateRangePicker/daterangepicker.js"></script> 
+0

你或许应该包括一个链接到您正在使用的日期范围选择器API还有什么'不working'意味着正在发生的事情是不应该或不!?发生的事情应该是? – Igor

+0

日期p icker窗口不会弹出。 – BumbleBee

+0

同样,如果您需要API帮助,请发布指向该API的链接。如果你Google'daterangepicker',你会看到有很多可能的API可供选择。我不认为那些愿意帮助的人必须猜测你需要帮助哪个特定的API是不现实的。 – Igor

回答

0

首先,我不会回答你的问题。因为我更喜欢你的建议:避免IT。

你在做什么不是角度的方式。您正在使用jQuery Way。所以,使用Angular和Libs会比较困难。所以,你有两个选择:使用AngularJS或使用jQuery。

为什么您没有角的方式做:

0 - 具有角,你不应该使用jQuery选择元素。 (您使用的是带有$('#txtDateRange').on('apply.daterangepicker',angular.element(document).ready$('#txtDateRange').daterangepicker

照顾这一点。或角会更加努力,不优雅。

如果你喜欢使用的角度,你可以使用一个角日期选取器,请检查这样的:http://mgcrea.github.io/angular-strap/#/datepickers

我希望它可以帮助你