【问题标题】:Kendo Date Picker doesn't refresh after k-ng-model changed更改 k-ng-model 后,Kendo Date Picker 不刷新
【发布时间】:2017-02-06 10:11:45
【问题描述】:

我有两个日期选择器和一个下拉列表,当我选择下拉列表时,我希望根据所选项目更改日期选择器,请参阅下面的代码。

$scope.toolbarOptions = {
                items: [{
                    template: "<label>From</label>"
                }, {
                    template: "<input kendo-date-picker k-ng-model='startDate'/>",
                    overflow: "never"
                }, {
                    template: "<label>To</label>"
                }, {
                    template: "<input kendo-date-picker k-ng-model='endDate'/>",
                    overflow: "never"
                }, {
                    template: "<label>Period</label>"
                }, {
                    template: "<select kendo-drop-down-list k-value-primitive='true' k-change='periodChanged' k-ng-model='selectedPeriod' k-data-source='periodDataSource' style='width:150px'/>",
                    overflow: "never"
                }]};


 $scope.periodChanged = function () {
            var value = $scope.selectedPeriod;
            var day = new Date(), year = day.getFullYear(), month = day.getMonth();
            switch (value) {
                case "Today":
                    $scope.startDate = day;
                    $scope.endDate = day;
                    return;
                case "This Week":
                    var first = day.getDate() - day.getDay();;
                    var last = first + 6;
                    $scope.startDate = new Date(day.setDate(first));
                    $scope.endDate = new Date(day.setDate(last));
                    return;
                case "This Month":
                    $scope.startDate = new Date(year, month, 1);
                    $scope.endDate = new Date(year, month + 1, 0);
                    return;
                case "This Year":
                    $scope.startDate = new Date(year, 0, 1, 23, 59, 59);
                    $scope.endDate = new Date(year + 1, 0, 0);
                    return;
                default:
                    return;
            }
        }

但是选择的项目改变后,日期选择器不会直接改变,当我选择另一个项目时,之前分配的值会显示在日期选择器中。有人可以帮忙吗?

【问题讨论】:

    标签: javascript angularjs kendo-ui kendo-datepicker


    【解决方案1】:

    只需调用 $scope.$digest() 即可帮助更新 DatePicker

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-26
      • 2019-06-02
      相关资源
      最近更新 更多