AngularJS ng-click на строке таблицы, но не на определенном td

Я столкнулся с проблемой, когда есть таблица событий-ng-click в строке таблицы, но я хочу, чтобы определенный td не выполнял событие в строке.

можно ли это сделать?

если да, то как?

Пример html:

      <table>
          <tr data-ng-click="do_some_action()">
              <td>
                  cell 1 is clickable
              </td>
              <td>
                  cell 2 is clickable
              </td>
              <td class="not-clickable-cell">
                  cell 3 is not! clickable
              </td>
          </tr>
      </table>

Ответ 1

Вы можете остановить распространение событий следующим образом:

<td class="not-clickable-cell" ng-click="$event.stopPropagation()">
    cell 3 is not! clickable
</td>

чтобы при щелчке это событие ячейки не переходило в обработчик события tr.

Демо: http://plnkr.co/edit/jvh5NKaDsvpPKuSJhzFx?p=preview

Ответ 2

Вы можете написать что-то в функции do_some_action, которая явно игнорирует класс "не-clickable-call". Было бы проще сказать с помощью jsfiddle или примера того, что это за функция.

Ответ 3

просто добавьте ng-click, где вы хотите событие click

<table>
      <tr >
          <td data-ng-click="do_some_action()">
              cell 1 is clickable
          </td>
          <td>
              cell 2 is clickable
          </td>
          <td class="not-clickable-cell">
              cell 3 is not! clickable
          </td>
      </tr>
  </table>

DEMO