Skip to content Skip to sidebar Skip to footer

Ng-disabled Not Working When Input Fields Are In An Ng-repeat

I'm trying to make my submit button disabled if the input fields from an array are invalid. Here's my html
  1. Add name attribute to your form, this will be the name of the variable to get the form data. So name = "myform" stores the form in $scope.myform.
  2. Add ng-model to all your inputs, if an input doesn't have an ng-model then it won't be considered in the form's validation.

After that you can always find out if your form is valid using $scope.myform.$valid. As an added bonus you could also add the name property to each input, this will also add an object for each input inside the $scope.myform containing all the information for that input and it's validation.

EDIT: Heres a plunkr with an example of what you want to do: http://plnkr.co/edit/86p9PrNnFVdfB7y406a6?p=preview


Solution 2:

To disable the submit button set $scope.invalid = true; in your controller and than in your html ng-disabled="invalid". Depending on how you check if an email input is invalid, set the $scope.invalid accordingly.


Post a Comment for "Ng-disabled Not Working When Input Fields Are In An Ng-repeat"