Скажем, у меня есть строка, которая выглядит какКак сделать целую строку нажатой, за исключением одной ячейки и ее полей в угловом?
<tr>
<td>John</td>
<td>Smith</td>
<td>Approved?<input type="checkbox"/></td>
</tr>
Каждая строка показывает один сотрудник, и позволяет проверить одобрить/одобряю работника (например, для регистрации на курс). Я хочу, чтобы пользователь мог щелкнуть в любом месте строки, чтобы получить более подробную информацию о сотруднике, но если они нажмут на последний столбец («Approved?»), Он не должен идти более подробно, так как он должен просто изменить флажок ,
Вот решения я знаю, никто не велик:
- Весь ряд:
<tr class="clickable" ng-click="go()">
. Делает все ячейки и поля доступными по клику, и требуется только одна записьng-click
, но при этом флажок вызывает действие «go()», что плохо. - Каждую ячейку:
<td class="clickable" ng-click="go()">...<td class="clickable" ng-click="go()">
. Pro: может ограничивать только те ячейки, которые я хочу. Con: много повторений (не DRY) и пропускает поля. - Весь ряд со специальным «go» fn:
<tr class="clickable" ng-click="go()">
, но «go» знает, как различать разные ячейки. Pro: Имеет точно эффект. Con: требует много знаний view/html в специализированном действии контроллера.
Как я могу сделать первые 2 столбца и их поля кликабельными, но не третьим или его пределами?
не было бы запутанным для пользователя? Я имею в виду, что с одной стороны действие по всей строке, а с другой - действие над флажком? Может быть, простая кнопка в дополнительном столбце сделает трюк и будет легче понять с первого взгляда. – LoremIpsum