如何使用angular指令默认禁用输入

时间:2016-11-25 00:48:15

标签: angularjs angularjs-directive angularjs-ng-checked angularjs-ng-disabled

如何在默认情况下禁用文本输入字段,并使用复选框切换它。我收到复选框以在启用状态和禁用状态之间切换输入字段但是我无法在默认情况下禁用输入字段,即使我在页面加载时将复选框设置为true。

我尝试了这种方法,但在关闭和打开复选框之前,它不会禁用输入字段:

<input type="text" ng-disabled="restaurant.valid_shortname" ng-model="restaurant.shortname" >
<input type="checkbox" ng-model="restaurant.valid_shortname" ng-checked="true"/>

我想要做的是在页面加载时选中复选框,因为研究会禁用输入字段

1 个答案:

答案 0 :(得分:2)

来自ng-checked的文档:

  

请注意,此指令不应与ngModel一起使用,因为这可能会导致意外行为。

正确的方法可能是在控制器中将restaurant.valid_shortname设置为true。如果您坚持在模板中执行此操作,也可以使用ng-init。这看起来像这样:

<input ng-init="restaurant.valid_shortname = true" type="text"
       ng-disabled="restaurant.valid_shortname"
       ng-model="restaurant.shortname" >
<input type="checkbox" ng-model="restaurant.valid_shortname"/>