I'm wondering if it is possible to set an invalid date string to an HTML5 date input after some JS check, for example "Today" instead of displaying XX-XX-XXXX date?
Note that I'm working with angular-1.6 that uses it's built-in directive that makes this hack harder to realize.
<input id="dateNative"
type="date"
ng-model="date.selectedDate"
min="{{minDate | date:'yyyy-MM-dd'}}">
function Controller($scope, $log, $element, $document) {
$scope.date = {};
$scope.minDate = new Date();
this.$postLink = () => {
this.dateCtrl = angular.element($document[0].getElementById('dateNative')).controller('ngModel');
this.dateCtrl.$parsers.unshift(date => {
if (moment(new Date()).isSame(date, 'day')) {
return 'Immediately';
}
return date;
});
};
}