我想计算天差异。点击一个按钮加载一个包含两个日期值输入的弹出窗口。并从对话框中的确定让我回到页面的天差。 到目前为止,我想这一点,如何在angularjs中使用对话框查找日期差异
在控制器:
$scope.myitems = ['01/01/2014','01/01/2014'];
$scope.openDlg = function() {
var modalInstance = $modal.open({
template: '<div><input cx-Date ng-model="myitems.date1"/><input cx-Date ng-model="myitems.date2"/><button ng-click="ok()">OK</button></div>',
controller: ModalInstCtrl,
resolve: {
myitems: function() {
return $scope.myitems;
}
}
});
modalInstance.result.then(function (myitems) {
$scope.myitems = myitems;
var dt1 = myitems.date1.split('/'),
dt2 = myitems.date2.split('/'),
one = new Date(dt1[2], dt1[1], dt1[0]),
two = new Date(dt2[2], dt2[1], dt2[0]);
var millisecondsPerDay = 1000 * 60 * 60 * 24;
var millisBetween = two.getTime() - one.getTime();
var days = millisBetween/millisecondsPerDay;
$scope.diff= Math.floor(days);
}, function() {
$log.info('Modal dismissed at: ' + new Date());
});
};
var ModalInstCtrl = function ($scope, $modalInstance, myitems) {
$scope.myitems = myitems;
$scope.ok = function() {
$modalInstance.close($scope.myitems);//.TotalDays; .getTime() - $scope.myitem.date1.getTime());
};
$scope.cancel = function() {
$modalInstance.dismiss('cancel');
};
};
模板调用对话框:
<div>
<button class="btn btn-default" ng-click="openDlg()">Calender</button>
<p>{{ diff}}</p>
</div>
你真的应该看看moment.js,它将使这个SOOOO容易 – aet