我正在处理日期格式的问题:
在我的公式中,我使用uib-datepicker-popup来获取日历,在控制器中我需要格式化这个日期,所以我使用的是$filter('date')
,
所以这是输入字段:
<div class="input-group">
<input id="fechasolicitudc" type="text" class="form-control"
ng-class="(form.fechasolicitudc.$invalid) && (submitted) ? 'error': '' "
ng-style="(form.fechasolicitudc.$invalid) && (submitted) && {'background-color':'pink'}"
name="fechasolicitudc" uib-datepicker-popup="dd/MM/yyyy"
ng-model="vm.peticion.contacto.fechaSol"
is-open="vm.datePickerOpenStatus.fechasolicitudc"/>
<span class="input-group-btn">
<button type="button" class="btn btn-default"
ng-click="vm.openCalendar('fechasolicitudc')">
<i class="glyphicon glyphicon-calendar"></i>
</button>
</span>
</div>
并在我的控制器中:
if (vm.peticion.contacto.fechaSol != null) {
var d = $filter('date')(vm.peticion.contacto.fechaSol, 'yyyy-MM-dd');
vm.peticion.contacto.fechaSol = d;
}
发生的事情是日期在数据库中更新,但字段将被删除。
当我尝试输入输入type="date"
时,该字段不会被删除,但日历弹出窗口不起作用。
答案 0 :(得分:1)
在你的标记中:
//...
uib-datepicker-popup="{{dateFormat}}" ng-model="vd"
datepicker-options="vdOptions"
// ...
在您的控制器中:
$scope.dateFormat = 'dd MMM yyyy'; // or your custom date
// and if you want to have your date set as today
$scope.vd = new Date();
$scope.vdOptions = {
formatYear: 'yy',
formatMonth: 'MM',
maxDate: new Date(),
minDate: minDate,
startingDay: 1,
showWeeks: false,
yearRows: 2,
yearColumns: 2
};
vd
= valueDate
在这种情况下,我没有看到使用$filter
的重点。