搜尋

首頁  >  問答  >  主體

angular.js - angular.element方法如何取得到DOM元素所在的scope?

父頁面a.html有一個controller,然後利用include函數將b.html載入進來。
父controller裡面嵌套一個子controller。
接著發現element.scope方法只能取得主controller的scope,無法傳回元素所在的scope。
請教大神如何解決。

a.html

<script src="app.js" type="text/javascript"></script>
<p ng-controller="a">
    <p ng-include="b.html"></p>
</p>

app.js

var app = angular.module('App',[]);
//主模块
app.controller("a", function($scope) {
    $scope.name= "a_name";
});
//子模块
app.controller("b", function($scope) {
    $scope.name= "b_name";
});

b.html

<script>
    var $scope = angular.element("#c").scope();
    console.log($scope.name);//理论上应该返回b_name,实际返回a_name
</script>
<p ng-controller="b">
    <p id="c"></p>
</p>
某草草某草草2744 天前637

全部回覆(1)我來回復

  • 阿神

    阿神2017-05-15 16:57:20

    其實你取得到的是父scope,你要取name實際中你只需要區分父子controller裡面的屬性值f_name,c_name

    回覆
    0
  • 取消回覆