4

我有一个如下的html代码:

<div class="outerdiv" data-ng-click="resetText()">
    <div class="innerdiv" data-ng-click="showText()">
        {{ text }}
    </div>
</div>

一个带有 a 的外部 divng-click和一个带有不同ng-click.

我的问题是:当我单击内部 div 时,外部 div 也会被触发。我能做些什么来解决这个问题(触发内部功能,而不是外部功能?

我可以使用硬编码标志使其工作,但不确定我是否面临竞争条件问题。

这是一个说明问题的小提琴。

4

2 回答 2

11
<div class="innerdiv" data-ng-click="showText($event)">

并在控制器中

$scope.showText = function(event) {
    // whatever
    event.stopPropagation();
}
于 2014-02-11T12:53:13.710 回答
2

尝试这个

<div class="outerdiv" data-ng-click="resetText()">
    <div class="innerdiv" data-ng-click="showText();$event.stopPropagation()">
        {{ text }}
    </div>
</div>
于 2014-02-11T12:54:44.357 回答