ユーザストーリー:新規ユーザが[新規ユーザ]チェックボックスをクリックし、[TermsAndConditions]ラジオボタンを選択すると、[登録]ボタンが有効になります。式を含むAngularJS ng-disabledディレクティブが機能しない
angularJSのコードが機能しません。 Registerボタンは無効のままです。何が間違っていたのだろうか?
<!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>
NG-無効に使用されるブール変数は文句を言わない仕事はそれで、親スコープ内にある場合に意味ですか? –
@KuganKumar間に '分離された'スコープのディレクティブがない限り、それはできます。スコープ上で定義された値(少なくとも読み取られている間)は、任意の子スコープにシームレスに継承されます。 –