我有一个有条件地出现的元素,在可见时需要填写。 (使用ng-required)
然而,当它不可见时,我收到以下错误:
name =''的无效表单控件无法调焦
如果元素可见,如何强制ng-required才能工作。我不想在表单中输入novalidate,因为如果我这样做,当元素可见时,验证不会发生。
答案 0 :(得分:9)
像这样,对ng-show
和ng-required
使用布尔值:
<form>
<input type="text" ng-show="displayCondition" ng-required="displayCondition"/>
</form>
好问题 - 很多人都没有意识到将false
传递给ng-required
会禁用该指令。
答案 1 :(得分:2)
使用ng-if代替ng-show我很容易解决它!我们只有ng-if。当它不可见时,该元素不再出现在代码中。因此浏览器不会验证它。