programing

AngularJS는 ng-model에서 포맷된 날짜를 얻습니다.

megabox 2023. 10. 31. 20:42
반응형

AngularJS는 ng-model에서 포맷된 날짜를 얻습니다.

타임스탬프에 모델 값으로 채워진 다음 텍스트 입력이 있습니다.

<input type="datetime" ng-model="workerDetail.dateOfBirth"  class="form-control" id="date_of_birth" />

입력 값을 주어진 타임스탬프로 표시합니다.

입력에 보이는 값을 포맷된 날짜(YYYY/MM/DD)로 변환하고 싶지만, 모델에서는 항상 타임스탬프가 있어야 합니다.

저는 이런 식으로 하려고 했습니다.

{{workerDetail.dateOfBirth | date:'MMM'}}

하지만 운이 없소.

어떤 조언이든 감사합니다.

필터를 사용해보실 수 있습니다.

HTML

<input type="datetime" ng-model="mydateOfBirth"  class="form-control" id="date_of_birth" />

컨트롤러 JS

$scope.$watch('mydateOfBirth', function (newValue) {
    $scope.workerDetail.dateOfBirth = $filter('date')(newValue, 'yyyy/MM/dd'); 
});

$scope.$watch('workerDetail.dateOfBirth', function (newValue) {
    $scope.mydateOfBirth = $filter('date')(newValue, 'yyyy/MM/dd'); 
});

다음과 같은 표준 시간대를 지정할 수도 있습니다.

$scope.$watch('workerDetail.dateOfBirth', function (newDate) {
    $scope.workerDetail.dateOfBirth = $filter('date')(newDate, 'HH:mm', 'UTC'); 
});

날짜만 가져오려면 이 코드를 사용하십시오(dd/mm/yyyyy).

html

<div class="col-lg-3">
<input type="date" name="dob" class="input-lg form-group" ng-model='dob'>
</div>

앵귤러js

app.controller('myctrl',function($scope, $http,$window,$filter) {
$scope.sent=function(){
    $scope.date = $filter("date")($scope.dob, 'dd-MM-yyyy');
    alert($scope.date);
}})

언급URL : https://stackoverflow.com/questions/26486696/angularjs-get-formatted-date-in-ng-model

반응형