Angularjs ng在ul li内多次单击发射 测试 测试2 内部测试2

Angularjs ng在ul li内多次单击发射 测试 测试2 内部测试2,angularjs,Angularjs,上面的树结构是通过使用堆栈溢出问题由两个指令生成的 单击test时,将调用一次setSelectedItem()。单击test2时,setSelectedItem()将被调用两次。单击内部测试2时,将调用setSelectedItem()三次 谁能帮我解决这个问题。我希望单击内部li标记时只调用一次单击。感谢使用$event.stopPropagation()。为了防止点击事件对家长的干扰 <ul> <li ng-click="setSelectedItem(member.

上面的树结构是通过使用堆栈溢出问题由两个指令生成的

单击test时,将调用一次setSelectedItem()。单击test2时,setSelectedItem()将被调用两次。单击内部测试2时,将调用setSelectedItem()三次


谁能帮我解决这个问题。我希望单击内部li标记时只调用一次单击。感谢使用
$event.stopPropagation()。为了防止点击事件对家长的干扰

<ul>
  <li ng-click="setSelectedItem(member.id)">test
    <ul>
      <li ng-click="setSelectedItem(member.id)">test 2
        <ul>
          <li ng-click="setSelectedItem(member.id)">inner test2
          </li>
        </ul>
      </li>
    </ul>  
  </li>
</ul>  
    测试
      测试2
        内部测试2

使用
$event.stopPropagation()。为了防止点击事件对家长的干扰

<ul>
  <li ng-click="setSelectedItem(member.id)">test
    <ul>
      <li ng-click="setSelectedItem(member.id)">test 2
        <ul>
          <li ng-click="setSelectedItem(member.id)">inner test2
          </li>
        </ul>
      </li>
    </ul>  
  </li>
</ul>  
    测试
      测试2
        内部测试2

要停止事件传播,请使用下面的代码

<ul>
  <li ng-click="setSelectedItem(member.id);$event.stopPropagation();">test
    <ul>
      <li ng-click="setSelectedItem(member.id);$event.stopPropagation();">test 2
        <ul>
          <li ng-click="setSelectedItem(member.id);$event.stopPropagation();">inner test2
          </li>
        </ul>
      </li>
    </ul>  
  </li>
</ul>  
测试
要停止事件传播,请使用下面的代码

<ul>
  <li ng-click="setSelectedItem(member.id);$event.stopPropagation();">test
    <ul>
      <li ng-click="setSelectedItem(member.id);$event.stopPropagation();">test 2
        <ul>
          <li ng-click="setSelectedItem(member.id);$event.stopPropagation();">inner test2
          </li>
        </ul>
      </li>
    </ul>  
  </li>
</ul>  
测试
尝试添加
e.stopPropagation()
若要停止事件冒泡,upU可以将ng click指令附加到父ul,并使用event.target属性显示setSelectedItem函数的代码。为什么需要三个相同的点击处理程序?尝试添加
e.stopPropagation()
要停止事件冒泡,upU可以将ng click指令附加到父ul,并使用event.target Property显示setSelectedItem函数的代码。为什么需要三个相同的点击处理程序?第一级不需要necessary@Grundy只是作为一种预防措施,因为我们不确定什么是父元素及其绑定necessary@Grundy只是作为预防措施添加的,因为我们不确定什么是父元素及其绑定。