当时间选择器控件位于表单内并具有初始“有效”默认值时,它应该验证并且$scope.formname.$valid
应该为真。但是,我看到的是,除非用户与控件交互,否则它不会经过验证并且表单处于无效状态,这是不可接受的,因为用户甚至可能不想更改默认时间值。任何想法可以为 Angular 做些什么来分别使用其默认值和表单来验证控件。
https://plnkr.co/edit/p1I2NoNpg3XMzijHUadi?p=preview
<form name="myForm" novalidate>
<uib-timepicker ng-model="time" template-url="timepicker.html" hour-step="1" ng-required="true" minute-step="1" show-meridian="false" ></uib-timepicker>
<input type="submit" value="Form state" ng-click="alertState()"></button>
</form>
var app = angular.module('demo',['ui.bootstrap']);
app.controller('myCtrl',[ '$scope', function($scope) {
$scope.alertState = function() {
alert($scope.myForm.$valid);
};
}]);