2017-05-09 60 views
1

我有一组选项卡,每个选项卡列出几个项目。我想确保用户在一个标签中选择了某些内容并尝试移动到另一个标签时收到警告。所以我想要一个警告在所选标签变为活动状态之前弹出。我目前正在使用ng2-bootstrap选项卡。我想抑制select事件,并且不让新选择的选项卡在用户执行警告之前变为活动状态。防止在ng2-bootstrap选项卡上的默认选择angular2

TIA!

+0

你的意思是'ngx-bootstrap'? – yurzui

+0

https://ng-bootstrap.github.io/#/components/tabs/examples –

回答

1

可以声明自定义页眉和使用event.stopPropagation来说,拦截select事件

template.html

<tabset> 
    <tab heading='Tab 1'>Tab 1 content</tab> 
    <tab> 
    <template tabHeading> 
     <div (click)="tryToSwitch($event)"> 
     Tab 2 
     </div> 
    </template> 
    Tab 2 content 
    </tab> 
</tabset> 

component.ts

tryToSwitch(e) { 
    let result = confirm('Are you sure?'); 
    if(!result) { 
    e.stopPropagation(); 
    } 
} 

Plunker Example

+0

这并不能完全解决问题。我应该能够处理选项卡标题上的任意位置,而不仅仅是标题文本。 – bharathi

+0

你能创建一个不起作用的例子吗? – yurzui

+0

考虑你自己的plunkr。点击“标签2”文本周围的区域(在标签标题区域)。这并不妨碍事件的发生。 – bharathi

相关问题