0

최근에 각도 1.2.5에서 최신 버전 1.3-rc.3으로, ui-bootstrap 0.7.0에서 ui-bootstrap 0.11로 마이그레이션했습니다 .2, 내 코드의 일부 기능이 중단되었습니다.하나의 datepicker 필드에서 다른 날짜 피커 필드로 복사 할 때 날짜가 지정되지 않음

나는 한 페이지에 두 개의 datepicker가 있는데, 둘 다 처음에는 가치가 없습니다. 사용자가 첫 번째 datepicker에 대한 값을 datepicker 또는 수동으로 입력하면 두 번째 datepicker에 같은 날짜가 입력되기를 원합니다.

마이그레이션하기 전에 괜찮 았지만 이제는 두 번째 날짜의 형식이 지정되지 않습니다.

28- :

내가 사용하고 코드 ...

<div class="input-group"> 
     <input 
      class="form-control" 
      type="text" 
      name="datumVanaf" 
      ng-model="filter.datumVanaf" 
      placeholder="Datum vanaf (dd-mm-jjjj)" 
      datepicker-popup="dd-MM-yyyy" 
      required 
      datepicker-options="{{calendarOpties}}" is-open="kalender.datumVanafOpened" 
      clear-text="wis" 
      current-text="Vandaag" 
      close-text="Sluiten" 
      lower-than="{{filter.datumTM}}" 
      ng-class="{'error': filterForm.$submitted && filterForm.datumVanaf.$error.required || filterForm.datumVanaf.$error.lowerThan}" 
     /> 
     <span class="input-group-btn"> 
      <button type="button" class="btn btn-default" ng-click="openDatumVanaf($event)"><i class="glyphicon glyphicon-calendar"></i></button> 
     </span> 
    </div> 
    <div class="input-group"> 
     <input 
      class="form-control" 
      type="text" 
      name="datumTM" 
      ng-model="filter.datumTM" 
      placeholder="Datum t/m (dd-mm-jjjj)" 
      datepicker-popup="dd-MM-yyyy" 
      required 
      datepicker-options="{{calendarOpties}}" 
      is-open="kalender.datumTMOpened" 
      clear-text="wis" 
      current-text="Vandaag" 
      close-text="Sluiten" 
      ng-class="{'error': filterForm.$submitted && filterForm.datumTM.$error.required || filterForm.datumVanaf.$error.lowerThan}" 
     /> 
     <span class="input-group-btn"> 
      <button type="button" class="btn btn-default" ng-click="openDatumTM($event)"><i class="glyphicon glyphicon-calendar"></i></button> 
     </span> 
    </div> 

그리고 감시자

$scope.$watch('filter.datumVanaf', function(newValue, oldValue) { 
    logger.info('newValue', newValue); 
    if (newValue != undefined && $scope.filter != undefined && $scope.filter.datumTM == undefined && isValidDate(newValue)) { 
     $scope.filter.datumTM = newValue; 
    } 
}); 

날짜는 다음과 같이 첫 번째 입력 필드에 쇼를 시작하다 09-2014

하지만 두 번째 입력란에 복사 할 때 그것은 포맷되지 않는 :

일 2014년 9월 28일을 0시 0 분 0 초 GMT + 0200 (서부 유럽 (일광 절약 시간))

난이 더 이상 작동하지 않는 이유를 몰라, 내가 stackoverflow에서 유사한 문제를 찾는 데 어려움이 있습니다. 나는 명백한 것을 놓치기를 바라고있다. 그러나 나는 패배하고있다.

+0

가 편집 해 당신의 질문을 명확하게하기 위해, 당신이 신경 쓰지 않기를 바란다) –

답변

0

보기에 설정하기 전에 filter.datumVanaf의 익명 함수에서 $ 필터를 사용해보세요. 그래서 코드는 다음과 비슷한 수 :

$scope.filter.datumTM = $filter('date')(newValue,'dd-MM-yyyy'); 

그것을 테스트하지 않은,하지만 당신은 아이디어를 얻을)

참조 :

  1. AngularJS Documentation - date usage in javascript
+0

감사합니다. Asyene, 다른 것들이 우선 순위를 가지기 때문에 나는 이것을 시험 할 수 있기까지 약간의 시간이 걸렸다. 하지만 지금은 그것을 시도하고 그것은 매력처럼 작동합니다. –

+0

도와 드리겠습니다.) –

+0

Aaarghh, 이제 필드 $ scope.filter.datumTM의 값은 실제로는 더 이상 날짜가 아니며 문자열입니다. 이로 인해 백엔드로 보낼 때 기능이 중단됩니다. datepicker에서 날짜를 선택할 때 서식을 다시 사용하기를 원합니다. –