gpt4 book ai didi

javascript - AngularJS 不触发外部点击事件(嵌套的 ng-click)

转载 作者:行者123 更新时间:2023-11-30 15:25:00 24 4
gpt4 key购买 nike

<ul>
<li ng-init="hide1={state1:true}" ng-repeat="(id,name) in tree_root_list" ng-click="click_e_s_0(id,hide1)">
{$ name[1] $}
<ul ng-hide=hide1.state1>
<li ng-init="hide2={state2:true}" ng-repeat="id in e_s_1" ng-click="click_e_s_1(hide2)">
&ensp;{$ id $}
</li>
</ul>
</li>
</ul>

当我触发 click_e_s_1(hide2) 事件时,Angular 会调用 click_e_s_0(id,hide1) 事件。

其实我不想触发click_e_s_0(id,hide1)事件。

最佳答案

您实际上是在尝试触发一个ng-click (click_e_s_1) 并叠加在另一个ng-click (click_e_s_0)。如果你只想触发叠瓦式的,你需要stop the propagation parent 的:

内联解决方案

<li ... ng-click="click_e_s_1(hide2); $event.stopPropagation()">

函数内解决方案

<li ... ng-click="click_e_s_1(hide2, $event)">

并更新click_e_s_1:

$scope.click_e_s_1 = function(hide2, $event) {
$event.stopPropagation();
// Your stuff
}

关于javascript - AngularJS 不触发外部点击事件(嵌套的 ng-click),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43135007/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com