User story: quando un nuovo utente fa clic sulla casella Nuovo utente e accetta il pulsante di opzione Termini e condizioni, il pulsante Registra deve essere abilitato.La direttiva AngularJS ng-disabled con espressione non funziona
Il mio codice in angularJS non funziona. Il pulsante Registra rimane disabilitato. Ti stai chiedendo cosa è andato storto?
<!DOCTYPE html>
<html ng-app>
<head>
<script src="lib/angular/angular.min.js"></script>
</head>
<body>
<div ng-controller="LoginCtrl">
<div>
<label>New User?</label>
<input type="checkbox" ng-model="isNewUser"/>
</div>
<div ng-show="isNewUser">
<label>Accept Terms and Conditions</label>
<input type="radio" value="yes" name="tnc" ng-model="tnc"/><label>Yes</label>
<input type="radio" value="no" name="tnc" ng-model="tnc" /><label>No</label>
</div>
<div>
<input type="submit" value="Login" ng-disabled="isNewUser" >
<input type="submit" value="Register" ng-show="isNewUser" ng-disabled="hasAcceptedTnC('{{tnc}}')">
</div>
</div>
</body>
<script language="JavaScript">
var LoginCtrl = function ($scope) {
$scope.isNewUser = false;
$scope.tnc = "no";
$scope.hasAcceptedTnC = function(value) {
//alert(value);
return "yes"==value;
};
}
</script>
</html>
che dire, se la variabile booleana utilizzata in ng-disabile è portata genitore, non funzionerà è? –
@KuganKumar Lo farà a meno che non ci sia una direttiva sul campo "isolata" in mezzo. I valori definiti sull'ambito (pur essendo letti, almeno) sono ereditati senza problemi da qualsiasi ambito figlio. –