如何从AngularJS输入中禁用我的复选框?

问题描述:

<div ng-repeat="x in spaceutilization"> 
    <input type="checkbox" name="{{x.filenumber}}" id="{{x.id}}" class = "pdffiles" value="101SP{{x.initials}}.dwg" /><label for="{{x.id}}"><button type = "button" class = "btn btn-primary btn-sm hidden-sm hidden-xs"> PDF</button></label><br /> 
</div> 

我需要能够添加一些东西到这个片断,禁用输入复选框基于另一个AngularJS输入,如{{x.status}}。我试图简单地做:如何从AngularJS输入中禁用我的复选框?

<input type="checkbox" name="{{x.filenumber}}" id="{{x.id}}" class = "pdffiles" value="101SP{{x.initials}}.dwg" {{x.status}} /> 

status:'disabled'但给输入元素......我不明白,为什么在所有的内

{{x.status}}="" 

的输出。但它似乎是最简单的路线。

+1

您可以使用插值方法将动态属性动态添加到您的html标记中。在你的情况下,你可以简单地执行'ng-disabled =“x.status”' – 2015-03-30 21:20:40

您需要使用ng-disabled="expression"指令,对表情评估值的基础禁用它的属性添加到element.Also更好的属性值的评估,你可以使用ng-attr指令

标记

<input type="checkbox" ng-attr-name="{{x.filenumber}}" ng-attr-id="{{x.id}}" class ="pdffiles" 
value="101SP{{x.initials}}.dwg" ng-disabled="x.status == 'disabled'"/> 

如果x.status确实写了bool值,那么您可以直接使用ng-disabled="{{x.status}}"

+0

你的意思是{{x.status}} =='disabled'? 另外,什么状态相等?如果我没有禁用复选框会怎么样? – Christine268 2015-03-30 21:31:40

+0

使用@Rahil Wazir的上面的评论,我做了ng-disabled =“{{x.status}}”,其中状态:'true'或状态:'false' – Christine268 2015-03-30 21:39:41

+1

@ Christine268嘿,不要用'ng-disabled'如果'x.status'具有布尔值 – 2015-03-30 21:44:07