我遇到了ng-disable的问题。因为我使用棱角分明的材料我觉得这不起作用。我希望根据条件动态禁用或启用输入框。
注意: - 我有多个输入字段,我想要禁用或一次性启用所有输入。
我正在尝试这样
<md-input-container class="md-block" flex-gt-sm>
<label for="Autocomplete">From</label>
<input required type="text" class = "hideShadow" ng-model="FromLocation"
uib-typeahead="state for state in states | filter:$viewValue | limitTo:8"
class="form-control" ng-disabled="isDisabled">
<div ng-messages="searchFlight.FromLocation.$error">
<div ng-message="required">Please enter from location</div>
</div>
</md-input-container>
我正试图像这样动态访问ng-disabled="isDisabled"
$scope.isDisabled = true;
但这不起作用。我可以知道我哪里出错吗?
答案 0 :(得分:5)
我认为问题在于你绑定属性isDisabled的方式。
试试这个:
$scope.model = {
isDisabled: true
};
然后:
ng-disabled="model.isDisabled"
当我们尝试在指令上绑定基本属性时会发生此问题。我们需要绑定对象的属性才能正常工作。
答案 1 :(得分:1)
您可以使用ng-disabled
启用或禁用该字段例如,如果您想最初禁用按钮,并在执行了要启用按钮的操作后
<button class="btn btn-default" type="submit" ng-disabled="isDisabled" ng-click="ok()">OK</button>
$scope.isDisabled = true;
$scope.save = function(){
//after completing the operation set the values of variable to false
$scope.isDisabled = false;
}