我正在使用angular-bootstrap-datetimepicker模块供用户选择日期和时间,如何在视图渲染时添加defualt dateandtime?我们是否有任何属性可以设置booleab值或任何其他更好的appraoch?
main.html中
<div class="dropdown form-group">
<!-- <label>Start Date</label> -->
<a class="dropdown-toggle" id="dropdownStart" role="button" data-toggle="dropdown">
<div class="input-group date">
<input type="text" class="form-control" data-ng-model="dateRangeStart" placeholder=" Search Start Date">
<span class="input-group-addon"><i class="glyphicon glyphicon-calendar"></i></span>
</div>
</a>
<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>
</div>
Ctrl.js
$scope.endDateBeforeRender = endDateBeforeRender
$scope.endDateOnSetTime = endDateOnSetTime
$scope.startDateBeforeRender = startDateBeforeRender
$scope.startDateOnSetTime = startDateOnSetTime
function startDateOnSetTime () {
$scope.$broadcast('start-date-changed');
}
function endDateOnSetTime () {
$scope.$broadcast('end-date-changed');
}
function startDateBeforeRender ($dates) {
if ($scope.dateRangeEnd) {
var activeDate = moment($scope.dateRangeEnd);
$dates.filter(function (date) {
$scope.searchObj.endDate = activeDate._i;
// console.log(activeDate);
return date.localDateValue() >= activeDate.valueOf()
}).forEach(function (date) {
date.selectable = false;
// console.log(date);
})
}
}
function endDateBeforeRender ($view, $dates) {
if ($scope.dateRangeStart) {
var activeDate = moment($scope.dateRangeStart).subtract(1, $view).add(1, 'minute');
$dates.filter(function (date) {
$scope.searchObj.startDate = activeDate._i;
// console.log(activeDate._i);
return date.localDateValue() <= activeDate.valueOf()
}).forEach(function (date) {
date.selectable = false;
// console.log(date);
})
}
}
答案 0 :(得分:0)
您应该能够将data-ng-model
属性设置为默认值:
<datetimepicker data-ng-model="dateRangeStart"></datetimepicker>
在你的控制器中给dateRangeStart
一个默认值:
$scope.dateRangeStart = new Date();