AngularJS - 带有 ng-click 事件的网格中包含的按钮单击

AngularJS - Button click contained in grid with ng-click event

.html

<div class="col col-50"
    ng-repeat="col in row"
    ng-click="openProductDetails(col.prod_id);">
    <button 
        ng-click="addToCart(col.prod_id);">
        Add to cart
    </button>
</div>

如您所见,我在此处有一个 grid<div>,在点击事件中显示为 openProductDetails()。在网格内部,我有一个 button,其中有一个 addToCart()。问题是当我点击按钮时, openProductDetails() 也会被触发。我找不到方法来阻止单击按钮时父元素的单击事件。

提前致谢。

可以使用Use event.stopPropation() 。这个变量是对JS事件对象的引用,可以用来调用stopPropagation()

 <div class="col col-50"
        ng-repeat="col in row"
        ng-click="openProductDetails(col.prod_id);">
        <button 
            ng-click="addToCart(col.prod_id); $event.stopPropagation();">
            Add to cart
        </button>
    </div>