I want to make a form with validation of different fields: date, time, non-integer number. and valid 1.23 \ 1.23 \ 123
var app = angular.module('HelloHabr', []); function isNumeric(n) { return !isNaN(parseFloat(n)) && isFinite(n); } app .controller('userController', function($scope) { $scope.mimimi = null; }) .directive('mimimi', function() { return { require: 'ngModel', link: function(scope, elm, attrs, ctrl) { ctrl.$setValidity('mimimi', false); ctrl.$parsers.unshift(function(mimimi) { mimimi = (mimimi.replace(',', ".")); if (isNumeric(mimimi)) { ctrl.$setValidity('mimimi', true); return mimimi; } else { ctrl.$setValidity('mimimi', false); return undefined; } }); } }; }); input.ng-valid { background-color: #81F7F3; } input.ng-invalid { background-color: #F78181; } <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.0/angular.min.js"></script> <div ng-app="HelloHabr"> <form name="userForm"> <div ng-controller="userController"> <input class="form-control" type="text" name="LovelyMimimi" ng-model="mimimi" mimimi/> </div> <button type="submit" class="btn btn-primary" ng-disabled="userForm.$invalid">Submit</button> </form> </div> but this is one input, and what to do next is not very clear
<input class="form-control" type="date" name="2nd" ng-model="lol" required lol/> <input class="form-control" type="time" name="3hd" ng-model="time" required time/> untenable because they do not validate

input type="date",input type="time"- GrundyIsDateuseIsDateandIsTime- Grundy