通过点击嵌套 & $event.stopPropagation()
Nested ng-click & $event.stopPropagation()
我正在尝试取消嵌套 ng-click 事件中的传播。
$scope.cancel = function($event){
$event.stopPropagation();
}
相关查看代码:
<tbody>
<tr ng-click="goTo(1)">
<td class="col-md-1">{{ client.code }}</td>
<td class="col-md-5">{{ client.name }}</td>
<td class="col-md-2">{{ client.telephone }}</td>
<td class="col-md-2">{{ client.fax }}</td>
<td class="col-md-2"><a href="mailto:{{client.email}}" ng-click="cancel($event)">{{client.email}}</a></td>
</tr>
</tbody>
这是一个笨蛋:http://plnkr.co/edit/dxgfK41Dp1Gs2DCmeFcw?p=info
为什么不起作用?
它不起作用,因为如果您不从视图传递 $event,则 $event 是未定义的:
将此添加到您的视图中:
<td class="col-md-2"><a href="mailto:{{client.email}}" ng-click="cancel($event)">{{client.email}}</a></td>
这是传播停止后更新的 plunkr:http://plnkr.co/edit/ywvPcO01C0fgzvpxRnf9?p=info
我正在尝试取消嵌套 ng-click 事件中的传播。
$scope.cancel = function($event){
$event.stopPropagation();
}
相关查看代码:
<tbody>
<tr ng-click="goTo(1)">
<td class="col-md-1">{{ client.code }}</td>
<td class="col-md-5">{{ client.name }}</td>
<td class="col-md-2">{{ client.telephone }}</td>
<td class="col-md-2">{{ client.fax }}</td>
<td class="col-md-2"><a href="mailto:{{client.email}}" ng-click="cancel($event)">{{client.email}}</a></td>
</tr>
</tbody>
这是一个笨蛋:http://plnkr.co/edit/dxgfK41Dp1Gs2DCmeFcw?p=info
为什么不起作用?
它不起作用,因为如果您不从视图传递 $event,则 $event 是未定义的:
将此添加到您的视图中:
<td class="col-md-2"><a href="mailto:{{client.email}}" ng-click="cancel($event)">{{client.email}}</a></td>
这是传播停止后更新的 plunkr:http://plnkr.co/edit/ywvPcO01C0fgzvpxRnf9?p=info