作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有两个字段分别显示起始日期和截止日期,我有一个场景,我将动态填充“至”字段 oplossDaterangeto
,并且从字段 oplossDaterangefrom
将其设置为 24几个月前从TO现场。
如何根据“至今”设置 24 个月前的日期?
main.html
<div class="row form-horizontal">
<div class="col-md-6">
<div class="form-group">
<label for="Daterangefrom" class="col-md-4 control-label">From:</label>
<div class="col-md-7" ng-if="rcsaCycleDTO.oplossValDate">
<div class="row">
<div class="col-md-5 changeWdh">
<input type="text" class="form-control" name="oplossDaterangefrom" id="oplossDaterangefrom" kendo-date-picker ng-model="rcsaCycleDTO.oplossDaterangefrom" onkeydown="return false;" k-format="'MM/dd/yyyy'" k-min="'{{today}}'" ng-change="validateDate('oplossDaterangeto','oplossDaterangefrom')" />
</div>
<div class="col-md-1">
<label class="control-label padd15"> To:</label>
</div>
<div class="col-md-5 pull-right changeWdh">
<input type="text" class="form-control" name="oplossDaterangeto" id="oplossDaterangeto" kendo-date-picker ng-model="rcsaCycleDTO.oplossDaterangeto" disabled/>
</div>
</div>
</div>
Ctrl.js
$scope.oplossmaxdate = new Date('2015-01-15');
$scope.oplossmaxdate = $scope.oplossmaxdate.setMonth($scope.oplossmaxdate.getMonth() - 24);
$scope.oplossmaxdate = $filter('date')($scope.oplossmaxdate, 'MM/dd/yyyy');
console.log('date value :', $scope.oplossmaxdate);
$scope.oplossDaterangefrom = $scope.oplossmaxdate;
最佳答案
您可以使用 getmonth 来获取月份,然后从中减去 24。如果您随后设置月份,它将调整回来并更改年份等。
给定 d 的类型为日期:
d.setMonth(d.getMonth() - 24);
记录在此处
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/setMonth
哪些注释
If a parameter you specify is outside of the expected range, setMonth() attempts to update the date information in the Date object accordingly. For example, if you use 15 for monthValue, the year will be incremented by 1, and 3 will be used for month.
所以你的代码看起来像这样:
oplossDaterangefrom = oplossDaterangeto;
oplossDaterangefrom.setMonth(oplossDaterangefrom.getMonth() - 24);
关于javascript - 如何从当前日期值减去 24 个月并将其分配给另一个变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34798192/
我是一名优秀的程序员,十分优秀!