Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 名称为'';不可聚焦于隐藏元素_Angularjs - Fatal编程技术网

Angularjs 名称为'';不可聚焦于隐藏元素

Angularjs 名称为'';不可聚焦于隐藏元素,angularjs,Angularjs,我有一个元素,有条件地出现,需要在可见时填写。(需要使用ng) 但是,当它不可见时,我得到以下错误: 名称为“”的无效表单控件不可聚焦 如何强制ng仅在其元素可见时才工作。我不想在表单中输入novalidate,因为如果我这样做,当元素可见时,验证不会发生。像这样,对ng show和ng required使用布尔值: <form> <input type="text" ng-show="displayCondition" ng-required="displayCondit

我有一个元素,有条件地出现,需要在可见时填写。(需要使用ng)

但是,当它不可见时,我得到以下错误:

名称为“”的无效表单控件不可聚焦


如何强制ng仅在其元素可见时才工作。我不想在表单中输入novalidate,因为如果我这样做,当元素可见时,验证不会发生。

像这样,对
ng show
ng required
使用布尔值:

<form>
  <input type="text" ng-show="displayCondition" ng-required="displayCondition"/>
</form>


好问题-很多人没有意识到将
false
传递到
ng required
会禁用指令。

我使用ng if而不是ng show很容易解决这个问题!我们只有在。当元素不可见时,它就不在代码中了。因此浏览器不会验证它

如果您使用的是ng hide,您是否考虑过使用ng If来代替它(将元素完全从dom中删除)?很好的答案-效果非常好。非常感谢。评论者的回答也是有效的,但这取决于你是希望密钥为空(我的解决方案)还是不存在(他/她的)当时的最佳答案。