我有一个复选框和两个输入字段.必须选中复选框或必须填写两个输入字段.我正在使用Angular进行验证,即ng-show,ng-required.
选中该复选框后,将禁用两个输入字段,即ng-disabled ="$ parent.vm.selectAllDates".
现在我还必须清除可能已输入文本框的任何数据.
在页面加载时未选中该复选框.它在控制器中设置如下:vm.selectAllDates = false;
在Angular中选中复选框时,是否有某种方法可以清除输入字段?
编辑我添加了我尝试使用你的例子
复选框:
<input name="dateSelectAll" type="checkbox"
ng-model="$parent.vm.selectAllDates"
ng-required="vm.selectedReport.Parameters.StartDate == null && vm.selectedReport.Parameters.EndDate == null" />All Available Dates
Run Code Online (Sandbox Code Playgroud)
开始日期输入:
<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"
ng-change="$parent.vm.selectedReport.Parameters.StartDate = $parent.vm.selectAllDates ? '' : $parent.vm.selectedReport.Parameters.StartDate"
close-text="Close" />
Run Code Online (Sandbox Code Playgroud)
结束日期:
<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-change="$parent.vm.selectedReport.Parameters.EndDate = $parent.vm.selectAllDates ? '' : $parent.vm.selectedReport.Parameters.EndDate"
ng-required="$parent.vm.selectAllDates == false && $parent.vm.selectedReport.Parameters.EndDate == null"
close-text="Close" />
Run Code Online (Sandbox Code Playgroud)
一个非常奇怪的事情是我想看看发生了什么,所以我补充说
{{$parent.vm.selectedReport.Parameters.StartDate = $parent.vm.selectAllDates ? '' : …Run Code Online (Sandbox Code Playgroud)