Javascript can';t从子控制器访问父控制器的方法

Javascript can';t从子控制器访问父控制器的方法,javascript,angularjs,Javascript,Angularjs,我的html <section class="localsContainer" ng-controller="LocalsCtrl"> <h3>Lokale</h3> <div class="placesProgress"></div> <ul> <li ng-repeat="city in cities"> <p ng-show="city.

我的html

<section class="localsContainer" ng-controller="LocalsCtrl">
    <h3>Lokale</h3>
    <div class="placesProgress"></div>
    <ul>
        <li ng-repeat="city in cities">
            <p ng-show="city.LocalCount > 0" ng-click="getLocals(city.Id)">{{city.Name}}</p>
            <ul ng-show="activeCityLeft === city.Id">
                <li ng-repeat="local in locals[city.Id]">
                    <p>{{local.Name}} ng-click="getDetails()"</p>   
                </li>
            </ul>
        </li>
        <li ng-if="cities.length == 0">
            <strong>Nie znaleziono</strong>
        </li>
    </ul>
</section>

如果我理解正确,我应该能够在任何地方调用“getDetails”方法,因为它是在主控制器上定义的,即使是从获得其赢得的控制器但嵌套在附加到主控制器的元素中的元素。但它不起作用,当我单击应该调用getDetails的元素时,它将“ng click=“getDetails()”显示为html文本。

您的
ng click
定义错误-您将其定义为
元素中的文本:

<p>{{local.Name}} ng-click="getDetails()"</p>
{{local.Name}}ng单击=“getDetails()”

您应该将其定义为属性,因为它是一个指令:

<p ng-click="getDetails()">{{local.Name}}</p> 

{{local.Name}


您的
ng单击定义错误-您将其定义为
元素中的文本:

<p>{{local.Name}} ng-click="getDetails()"</p>
{{local.Name}}ng单击=“getDetails()”

您应该将其定义为属性,因为它是一个指令:

<p ng-click="getDetails()">{{local.Name}}</p> 

{{local.Name}


使用ng click作为属性,因为它是指令,并且指令(属性)与属性类似,所以您将其显示为文本

有关ng的信息,请单击

 <p ng-click="getDetails()">{{local.Name}} </p>  

{{local.Name}


使用ng click作为属性,因为它是指令,并且指令(属性)与属性类似,所以您将其显示为文本

有关ng的信息,请单击

 <p ng-click="getDetails()">{{local.Name}} </p>  

{{local.Name}


属性需要在元素上,例如

属性需要在元素上,例如

@user3561092总是发生……很乐意帮助。@user3561092总是发生……很乐意帮助。