我有一个页面,其中有一个复选框代表“所有日期”,还有两个输入字段代表开始日期和结束日期。当页面首次加载时,复选框未被选中。要求是,如果未选中复选框并且开始日期和结束日期字段中没有任何内容,则必须向用户显示消息。
这是我对于复选框和输入字段以及错误消息的设置:
<input name="dateSelectAll" type="checkbox" ng-model="$parent.vm.selectAllDates" ng-required="$parent.vm.selectedReport.Parameters.StartDate == null || $parent.vm.selectedReport.Parameters.EndDate == null" />All Available Dates
<input name="beginningDate" type="text" class="form-control form-field" datepicker-popup="dd-MMM-yyyy"
ng-disabled="$parent.vm.selectAllDates"
ng-model="$parent.vm.selectedReport.Parameters.StartDate"
is-open="beginningDateOpened"
ng-required="$parent.vm.selectAllDates == false"
close-text="Close" />
<input name="endDate" type="text" class="form-control form-field" datepicker-popup="dd-MMM-yyyy"
ng-disabled="$parent.vm.selectAllDates"
ng-model="$parent.vm.selectedReport.Parameters.EndDate"
is-open="endDateOpened"
ng-required="$parent.vm.selectAllDates == false"
close-text="Close" />
以下是我在控制器开头的内容:
vm.selectAllDates = false;
这是我在提交函数中的代码:
这是我在提交函数中的代码:
if ($scope.reportForm.$valid) {
//do stuff
}
else
{
$scope.reportForm.submitted = true;
}
如果我点击提交按钮时表单是“有效的”,则会显示模态窗口。
现在发生的情况是页面加载,如果我没有输入日期或选中复选框然后提交,消息会出现,我不能提交,这很好。
当我选中复选框时,消息仍然存在,但我可以提交。
当我取消选中复选框并输入日期时,消息仍然存在,但我可以提交。
当任何条件满足时,如何隐藏消息?抱歉!我还是 Angular 的新手。