2017-03-31 13 views
0

指示文では、$scope.checkValue = trueと設定されており、同じスコープがngstrapモーダルダイアログに渡されます。以下チェックボックスがngstrapモーダルダイアログのモデルを更新していません

ボタンクリックで呼び出されると、ダイアログをポップアップされたディレクティブリンク機能からのコードです:以下

return { 
     templateUrl: "../Views/userSubscriptionView.html", 
     restrict: 'E', 
     scope: {}, 
     link: function ($scope, element, attributes) { 
$scope.checkValue = false; //this is bind to checkbox model but not updating on check/uncheck. 
    function DoOpenDialog() 
    { 
     //other code 
     var myOtherModal = $modal({ scope: $scope, templateUrl: "../Views/SubscribePopup.html", show: false , persist:false}); 
           myOtherModal.$promise.then(myOtherModal.show); 
    } 

ダイアログからのコードです:

<input type="checkbox" ng-model="checkValue"/> 
{{checkValue}} 

問題がある:ときに私チェックボックスをtrueまたはfalseにチェックすると、モデル 'checkValue'は更新されません。私はチェックボックスのチェック状態に基づいて他のコントロールの状態を変更する必要があります。私は明示的にng-true-valueng-false-valueプロパティを設定することによってこの問題を解決するために使用

おかげ

+0

あなたのディレクティブコードを投稿すると、さらに役立ちます。 – Aravind

+0

コードを追加することなく、あなたの問題が何であるかを知ることは不可能ですが、[JavaScript Prototype Inheritance](http://stackoverflow.com/questions/14049480/what-are-the)の問題が発生している可能性がありますスコープ・プロトタイプ - プロトタイプ - 継承 - イン・アンギュラ - ズ)。一般的には、角度バインディング**で常にドットを使用する必要があります**。 – Claies

+0

詳しくはポストを更新しました。 –

答えて

0

<input type="checkbox" 
    ng-true-value="'true'" 
    ng-false-value="'false'" 
    ng-model="checkValue" 
/> 

お知らせ'true'周りの単一引用符。最終的にすべてが文字列として渡され、ブール値または整数として渡されません。私はmysqlのブール値(tinyint)0/1値を扱わなければならないときと同じ方法を使用します:ng-true-value="'1'"など。

関連する問題