Join the Stack Overflow Community
Stack Overflow is a community of 6.3 million programmers, just like you, helping each other.
Join them; it only takes a minute:
Sign up

I am having an issue with ng-disable. as i am using angular material i think this is not working. I want my input box to be disabled or enabled dynamically based on condition.

Note:- I have multiple input fields i want disable or enable all of the at a single shot.

I am trying like this

<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>

I am trying to access ng-disabled="isDisabled" dynamically like this

$scope.isDisabled = true;

But this is not working. May i know where i am going wrong?

share|improve this question
    
Is angular working, no errors in console? – pedro Oct 26 at 2:10
    
no errors in console – Hemanth Paluri Oct 26 at 2:12
    
Mind sharing your js code? – raksmen Oct 26 at 2:14
    
i don't mind to share but it is quite heavy. – Hemanth Paluri Oct 26 at 2:21
    
I got a solution. i am keeping my JS in wrong place my bad :( – Hemanth Paluri Oct 26 at 5:13
up vote 0 down vote accepted

I believe the problem is in the way you did bind the property isDisabled.

try this:

$scope.model = {
    isDisabled: true
};

Then:

ng-disabled="model.isDisabled"

This problem occur when we try to bind a primitive property on a directive. We need to bind a attribute of a object to work properly.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.