2017-02-16 4 views
0

私は時間の差異と日付の違いに基づいているアプリを作ろうとしていて、日付と時刻の両方がユーザーによって入力され、24時間の両方の場合には時間形式が入力されます。間違ったans。anglejの2つの時間値と日付の値をどのようにするか?

<html> 
 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script> 
 
<body> 
 

 
<div ng-app=""> 
 
Time1:<br><input type="text" pattern="([0-1]{1}[0-9]{1}|20|21|22|23):[0-5]{1}[0-9]{1}" ng-model="time1"><br> 
 
<br> 
 
Time2:<br><input type="text" pattern="([0-1]{1}[0-9]{1}|20|21|22|23):[0-5]{1}[0-9]{1}" ng-model="time2"> 
 
<p> Your Time is ans is{{time1-time2}} </p> 
 
</div> 
 

 
</body> 
 
</html>

+0

関連コードを示してください。 –

+0

申し訳ありませんが、htmlのコードが挿入されました。 – Anshuman

答えて

0

ソリューションは、入力タイプをHTML用時間を使用し、アウンKhaingウーによってAngularJS:How to print out duration time with format?に記載されているように、計算結果をフォーマットします。

<html> 
 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script> 
 
<body> 
 

 
<div ng-app="myApp"> 
 
Time1:<br><input type="time" id="time1" name="time1" ng-model="time1" placeholder="HH:mm" required /><br> 
 
<br> 
 
Time2:<br><input type="time" id="time2" name="time2" ng-model="time2" placeholder="HH:mm" required /> 
 
<p> 
 
time1:{{time1}}<br/> 
 
time2:{{time2}} 
 
</p> 
 
<p> Your Time is ans is {{(time1-time2)| makePositive | date: 'HH:mm': 'UTC'}} </p> 
 
</div> 
 
<script> 
 
var app = angular.module('myApp', []); 
 
app.filter('makePositive', function() { 
 
return function(num) { 
 
    if(num < 0) { 
 
     todayDate = new Date(num); 
 
     todayDate.setDate(todayDate.getDate()+1); 
 
     num = todayDate; 
 
    } 
 
    return num; 
 
} 
 
}); 
 
</script> 
 
</body> 
 
</html>

アップデート:私は、時刻1 < TIME2の問題を解決するためのカスタムフィルタを追加しました。私はここから解決策を取った:Display absolute value angularjs

アップデート2:時刻1とTIME2間の差が負の場合は一日だけを追加することにより、フィルタを変更しました。私の適応のベースとしてangularjs - calculate a date plus one dayを使用しています。

+0

ご回答いただきありがとうございます、私はこの概念を作ることができる方法を提案できますか?time1 Anshuman

+0

カスタムフィルターを使用して回答を更新しました。 – Alexander

+0

申し訳ありませんが、私の質問は異なっています。私のqns.supposeユーザが時間を6時00分に追加すると、午前6時00分にロジックにtime2 = 06:00 AMとtime2 = 07:20AMが追加されます。 30:00と07:20です。値が07:20より大きい場合は、通常の値を減算します。 – Anshuman

関連する問題