2017-09-26 56 views
-1

當我輸入日期並在給定的123476890017這樣的事情中執行警報時,我有一個日期輸入字段。任何人都可以幫助我呢?如何在AngularJS中將輸入日期轉換爲實際日期?

如果我輸入日期,如12/07/2017和警報,結果應該是2017/07/12。

HTML代碼:

<input type="date" placeholder="search" ng-model="date"> 

腳本

function formatDate(date) { 
     alert(date); 
} 
+0

嘗試'變種X = 123476890017;' '變種Y =新的日期(X)' – Edison

+0

爲什麼你正在服用的複雜化? 。只是使用日期過濾器。看到我更新的答案。 –

回答

0

它也非常容易使用庫像Moment.js

moment("12/07/2017", "DD/MM/YYYY").format("YYYY/MM/DD"); 
=> "2017/07/12" 
+1

爲什麼要使用整個圖書館? – user5014677

0

你可以試試這個還有:

var app = angular.module('myApp', []); 
 
app.controller('myCtrl', function($scope) { 
 
    $scope.date = 1506413232120; 
 
    $scope.new_date = new Date($scope.date); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script> 
 
<div ng-app="myApp" ng-controller="myCtrl"> 
 
\t {{new_date | date : 'yyyy/MM/dd' }} 
 
</div>

+0

謝謝Raghav先生,但是我想使用ParseDate函數。你可以幫我嗎???我不知道如何解析輸入日期字符串到真正的日期。 –

+0

這可能會幫助你看看https://stackoverflow.com/questions/4496359/how-to-parse-date-string-to-date – Raghav

+0

@KKSK「*我想使用ParseDate函數*」... ...以及那麼你應該在你的問題中指定它!如果你不告訴我們這是什麼,你不會得到你想要的答案。 – FluffyKitten

0

使用日期過濾器。 Click here for more details about date filter

$filter('date')(date, format, timezone) 

$scope.newDate = $filter('date')($scope.date, "dd-MM-yyyy"); 

var app = angular.module('myApp', []); 
 
app.controller('myCtrl', function($scope, $filter) { 
 
    //$filter('date')(date, format, timezone) 
 
$scope.newDate = $filter('date')($scope.date, "dd-MM-yyyy"); 
 

 
$scope.take = function(date){ 
 
$scope.newDate = $filter('date')(date, "yyyy-MM-dd"); 
 
console.log($scope.newDate); 
 
} 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.3/angular.min.js"></script> 
 
<div ng-app="myApp" ng-controller="myCtrl"> \t 
 
    <input type="date" ng-model="date" ng-change="take(date)"> 
 
</div>

相關問題