2017-03-24 14 views
2

私は角度ブートストラップのdateandtimepickerモジュールを使用していますので、ユーザーがブラウザを起動したときに、以下のコードで日付と時刻を24時間前に設定したい場合はどうすればいいですか?Dateオブジェクトを使用して、Dateオブジェクトを使用して現在の日付から24時間日時を設定するにはどうすればよいですか?

main.htmlを

<ul class="dropdown-menu" role="menu" aria-labelledby="dLabel"> 
    <datetimepicker data-ng-model="dateRangeStart" data-datetimepicker-config="{ dropdownSelector: '#dropdownStart', renderOn: 'end-date-changed' }" data-on-set-time="startDateOnSetTime()" data-before-render="startDateBeforeRender($dates)"></datetimepicker> 
</ul> 

ctrl.js

$scope.dateRangeStart = new Date(); 
$scope.dateRangeStart.setHours($scope.dateRangeStart.getHours() - 24); 
console.log($scope.dateRangeStart); 
+0

[AngularJSの可能性の重複を:いくつかのコンポーネントと明日の日付と昨日の日付](http://stackoverflow.com/questions/31378925/angularjs-tomorrow-date-and-yesterdays-date-with-some-ng-component) – mxr7350

+0

コードに間違いがありますか?あなたはどんな結果を得ますか?あなたは何を期待しましたか?夏時間が観測されたのは、すべての日が24時間ではないことに注意してください。可能であれば、[*現在の日付に+1を加える*](http://stackoverflow.com/questions/9989382/add-1-to-current-date)の複製。 – RobG

答えて

2

のJS日付オブジェクトは、ちょうど24時間を追加していない、シンプルかつスマートで夏時間と新しい月を占め/年。ただ、次のコマンドを使用します。

あなたはまた、特定の日から一日ロールバックするためにミリ秒の値を使用することができます
var tomorrow = new Date(); 
tomorrow.setDate(tomorrow.getDate() + 1); 
+1

私は昨日の日付を探していました。+1の代わりに-1を使用しましたので、私のために働いています – hussain

+1

おかげで問題を解決できました。 – hussain

0

var app = angular.module("app", []); 
 
app.controller("ctrl", function($scope) { 
 

 
    var todaysDate = new Date();  
 
    var tomorrowsDate = new Date().setDate(todaysDate.getDate()+1);  
 
    var formattedDate = new Date(tomorrowsDate); 
 

 
    console.log(formattedDate); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app="app" ng-controller="ctrl"> 
 
    
 
</div>

+0

未定義のプロパティ 'setHours'を読み取ることができません – hussain

0

currentDate = new Date(); 
previousDay = new Date(currentDate - 86400000); 
alert(previousDay); 
+0

ただし、夏時間が確認されていない日はすべて8.64eです。 – RobG

関連する問題