我有一些输入类型=日期字段我试图通过Angular强制执行至少今天的日期。
根据Angular文档,min =和max =应该都有效,但它们不是。即使日期字段无效,我的表单也不会被标记为无效。
我正在测试Chrome测试版,但这是在Cordova / PhoneGap应用程序中编写的,可以在iOS 7上运行。它在任何一个地方都无法正常工作。
我的字段如下:
<input name="dateDue" ng-class="{ invalid: form.myForm.dateDue.$invalid }" type="date" ng-model="todo.promiseDate" min="{{ minDate }}" required/>
minDate在控制器中设置为:
$scope.minDate = $filter('date')(new Date(), 'yyyy-MM-dd'); // I have tried both with and without the filter.
所以是的 - 我错过了什么?
TIA。
答案 0 :(得分:0)
我认为问题出在这里......
ng-class="{ invalid: form.myForm.dateDue.$invalid }"
表达式应为<formname>.<fieldname>.$invalid
。目前form.myForm.dateDue.$invalid
评估为undefined
,这总是假的。尝试...
ng-class="{ invalid: myForm.dateDue.$invalid }"