Имея таблицу со строками, я могу щелкнуть строку, чтобы получить доступ к деталям одной строки через отдельную страницу. Это делается через [routerlink].

 <tr *ngFor="let setting of applicatieData.settings" [routerLink]="['/settings-edit', setting.id]">
    <td class="col-3">{{ setting.shortName | slice:0:10 }}</td>
    <td class="col-4">{{ setting.value }}</td>
    <th class="col-3"><button class="btn btn-info" type="button" (click)="toggleValue(setting.id)">Toggle</button></th>
    <td class="col-2" (contextmenu)="onrightClick($event, setting.id)"><i class="icon-ellipsis-vert"></i></td>
</tr>

Я бы хотел, чтобы событие нажатия кнопки «Переключить» имело приоритет над ранее упомянутым событием щелчка строки. Как я могу это сделать?

Правый клик с «контекстным меню» работает нормально.

0
tm1701 30 Май 2019 в 22:17

2 ответа

Лучший ответ

Вы должны остановить событие, чтобы оно не всплывало на дереве.

<th class="col-3"><button class="btn btn-info" type="button" (click)="toggleValue($event, setting.id)">Toggle</button></th>
toggleValue(event: MouseEvent, id: string) {
  event.preventDefault();
  event.stopPropagation();

  ...
}
3
Leon Radley 30 Май 2019 в 19:25

Ты можешь попробовать это

<tr>
  <td class="col-3" (click)="clickFila()">1</td>
  <td class="col-4" (click)="clickFila()">2</td>
  <th class="col-3" (click)="clickFila()">3</th>
  <td class="col-2"(click)="clickColumna()">4</td>
</tr>
0
renato cohaila 30 Май 2019 в 19:32