嗨,我是棱角分明的新手
我的要求是:
我有ul
个li
。点击li
元素后,我必须填充另一个ul
作为父li
的子项。我成功地将ul
添加到li
但是当我点击新的ul->li
时,会调用父ul
的功能。我试图添加$ event.preventDefault()但仍然无法正常工作。我正朝着正确的方向前进吗?
<ul class="navigation" ng-repeat='category in fullTree.category[0]' ng-click='dropmenu(category.category_id,category.level,category.has_child_category,$event)'>
<li>
<p>{{category.category_name}} <i class="ion-chevron-down" ></i></p>
</li>
</ul>
控制器:
$scope.dropmenu = function (category_id, level, has_child_category, $event) {
$.each(somearray[level], function (index, item) {
$($event.target).append("<ul class='navigation'><li ng-click='dropmenu("+item.category_id+","+item.level+","+item.has_child_category+",$event);$event.preventDefault()'><p>"+item.category_name+"<i class='ion-chevron-down' ></i></p>"+item.name+"</li></ul>")
}
}
提前致谢。
答案 0 :(得分:0)
我认为你需要
event.stopImmediatePropagation()
https://developer.mozilla.org/en-US/docs/Web/API/event.stopImmediatePropagation
它可以防止事件冒泡。
编码示例我发现:(不是我的)