Comment définir un champ de saisie à ng-invalid dans angularJS

Je voudrais vérifier un champ de saisie de numéros de carte de crédit.

Le champ doit rester valide jusqu'à ce qu'il ait une longueur minimale de 13 ans. En tant que l'utilisateur doit être en mesure de remplir l'espace dans le champ, j'ai supprimer les espaces à l'intérieur d'une fonction javascript.
Dans cette fonction, je voudrais vérifier le numéro de carte de crédit (sans les espaces) et réglez-ng-valide aussi longtemps que la longueur minimale est inférieure à 13, et la longueur maximale est supérieure à 16.

Il devrait être quelque chose comme ceci:

$scope.ccHandler = function() {
   if ($scope.ccNumber == '') {
      document.getElementById("ccProvider").disabled = false;
   }
   $scope.ccNumber = inputCC.value.split(' ').join(''); //entfernt die Leerzeichen aus der Kreditkartennummer vor der übergabe an den Server
   console.log("das ist meine CC: " + $scope.ccNumber);
   isValidCreditCardNumber($scope.ccNumber);
   getCreditCardProvider($scope.ccNumber);
   document.getElementById("ccProvider").disabled = true;
   if ($scope.ccNumber.length < creditCardNumberMinLength || $scope.ccNumber.length > creditCardNumberMaxLength) {
      //$scope.ccNumber.ng-invalid = true;
      console.log("ccNumber ist noch ungültig!");
      //document.getElementById("inputCC").$setValidity("ccNumber", false);
   }
}

Ce serait la partie du XHTML:

<div class="form-group" ng-switch-when="CreditCard">
   <label class="col-xs-3 col-sm-3 control-label">Kreditkartennummer</label> 
   <div class="col-xs-5 col-sm-5 col-md-5">
      <input name="ccNumber" class="form-control" type="text" id="inputCC" ng-change="ccHandler();updateCount()" ng-model="ccNumber" ng-required="true"/>
   </div>
</div>

Comment puis-je y parvenir?

source d'informationauteur Pille