2017-05-12 18 views
-3

は私のコードがあるシンプルなポップアップで働いていない:AngularJS - NGクリックし、問題がNGクリックである私の質問として

<div class="top-login"><a href="" class="register">S'inscrire</a></div> 
    <div class="in-login"><a href="" class="login">Se connecter</a></div> 
<script> 
$(document).ready(function() { 

    $("a.login").simplePopup({ type: "html", htmlSelector: "#popup1" }); 
    $("a.register").simplePopup({ type: "html", htmlSelector: "#popup2" }); 
}); 

と私はこの例をテストするが、まだ動作していない

<div id="popup2" style="display:none;" > 
    <div class="col-md-7" ng-controller="RegisterCtrl"> 
      ok is here:{{ok}} 
      <button class="cws-button2 " type="button" ng-click="ok=1" >S'inscrire</button> 

    </div> 
</div> 

ngのクリック動作していないが、何のエラー

+0

[Fiddle](http://jsfiddle.net/q88t9tvL/)を参照してください。あなたのシナリオは何ですか? – anoop

+0

@anoopはいそれはフィドルのように動作しますが、ポップアップすると動作しません – lolla

+0

あなたはフィドルを作ることができますか? – anoop

答えて

0

は、それが原因スコープの継承の問題が動作しませんありません。これを参照してください:https://github.com/angular/angular.js/wiki/Understanding-Scopes

これを機能させるには、オブジェクトのプロパティをokにします。たとえば、ng-click="foo.ok=1"

もう1つの解決策は、関数を使用してコントローラ内のすべてを行うことです。

<button class="cws-button2 " type="button" ng-click="doStuff(1)" >S'inscrire</button> 

コントローラでは、doStuff関数を宣言します。

$scope.doStuff = function (val) { 
    $scope.ok = 1; 
}; 
+0

あなたに感謝してくれてありがとうございますが、私がこの{{input type = "text" name = "Nom"プレースホルダ= "Nom" ng-model = "user}を実行するときにスコープに問題がある場合は、angularjsの新機能です。実際の関数は正しく動作します。どうすればオブジェクトと関連付けることができます – lolla

+0

オブジェクトのプロパティでng-modelを使用しているためおそらく動作します。 (ユーザーはオブジェクト、u_lastnameはプロパティです)。上記のようにコードをリファクタリングすると、うまくいくはずです。 –

関連する問題