Подтвердить что ты не робот

AngularJS ng-grid с пользовательской кнопкой

Я использую кнопку angular в ng-grid. Мне нужно знать, как я могу идентифицировать, какая кнопка была нажата изнутри сетки.

Я предполагаю, что часть сложности заключается в том, что кнопка нажата до выбора строки (только мой анализ, вероятно, не поможет с решением:)

Захват того, как выглядит сетка.

ng-grid

Плункер, иллюстрирующий проблему здесь

4b9b3361

Ответ 1

Мне удалось выяснить, как решить свой вопрос, в основном передать "row" в качестве аргумента вашей функции для ng-click. нг кнопкой мыши = "сохранить (строку)"

Перед

.. ng-click="edit(selectedItem)" >Edit</button> '

После

.. ng-click="edit(row)" >Edit</button> '

Я обновил plunker здесь, чтобы отразить тот же

row.entity даст мне объект, связанный с этой строкой сетки

Ответ 2

@Shai Aharoni Вы можете запретить выбор строки, передав $event в качестве первого аргумента обработчику кликов:

.. ng-click="edit($event, row)">Edit</button>

а затем вызывает stopPropagation() в событии внутри обработчика.

$scope.edit = function(event, row) { event.stopPropagation(); }