单击按钮时如何 expand/collapse 手风琴选项卡?
How to expand/collapse accordion tab when clicking a button?
我有这个手风琴,所以为了 expand/collapse 一个手风琴选项卡,我点击选项卡上的任意位置,但我希望能够 expand/collapse 在 "Click me" 按钮 而不是手风琴选项卡上单击 ONLY 时。谁能指出我正确的方向?非常感谢!
这是我的代码:
<p-accordionTab header="Accordion Tab 1" [selected]="true">
<p-header>
Accordion Tab 1
<span>
<button (click)="myFunction($event)">Click me</button>
</span>
</p-header>
<ul>
<li>Colors</li>
</ul>
</p-accordionTab>
基于您正在使用的手风琴组件的docs,您可以使用程序化控件来实现您需要的功能。
这里是 DEMO,我在其中修改了您的代码。所有选项卡都被禁用,它们 opened/closed 以编程方式 仅通过单击 headers.
中的 "Click me" 按钮
UPD 新 DEMO 具有:
multiple="true"
- 默认打开所有选项卡
- 覆盖
disabled
属性 的自定义样式
css 文件:-
.zippy{
border: 1px solid #ccc;
border-radius:2px;
}
.zippy-heading{
font-weight: bold;
padding: 20px;
cursor: pointer;
background: #f09b9b;
}
.zippy-body{
padding: 20px;
}
.expanded{
background: #b3b0b0;
}
Html 视图:-
<div class="zippy" style="padding:40px;">
<div class="zippy-heading"
[class.expanded]="isExpandedBikes"
(click)="onBikeClick()">
{{bike}}
<span
class="fa"
[class.fa-angle-down] ="!isExpandedBikes"
[class.fa-angle-up]="isExpandedBikes"
(click)="onBikeClick()" style="font-size: 20px; position: absolute;right: 50px;"></span>
</div>
<div *ngIf="isExpandedBikes" class="zippy-body">
<li *ngFor ="let data of bikeContent">
{{data}}
</li>
</div>
</div>
组件文件:-
constructor() {
this.bike = "Bikes";
this.bikeContent=["My First Bike","My Second Bike","My Third Bike"];
}
对于组件文件中的按钮 Fxn:-
onBikeClick(){
this.isExpandedBikes =! this.isExpandedBikes;
}
我有这个手风琴,所以为了 expand/collapse 一个手风琴选项卡,我点击选项卡上的任意位置,但我希望能够 expand/collapse 在 "Click me" 按钮 而不是手风琴选项卡上单击 ONLY 时。谁能指出我正确的方向?非常感谢!
这是我的代码:
<p-accordionTab header="Accordion Tab 1" [selected]="true">
<p-header>
Accordion Tab 1
<span>
<button (click)="myFunction($event)">Click me</button>
</span>
</p-header>
<ul>
<li>Colors</li>
</ul>
</p-accordionTab>
基于您正在使用的手风琴组件的docs,您可以使用程序化控件来实现您需要的功能。
这里是 DEMO,我在其中修改了您的代码。所有选项卡都被禁用,它们 opened/closed 以编程方式 仅通过单击 headers.
中的 "Click me" 按钮UPD 新 DEMO 具有:
multiple="true"
- 默认打开所有选项卡
- 覆盖
disabled
属性 的自定义样式
css 文件:-
.zippy{
border: 1px solid #ccc;
border-radius:2px;
}
.zippy-heading{
font-weight: bold;
padding: 20px;
cursor: pointer;
background: #f09b9b;
}
.zippy-body{
padding: 20px;
}
.expanded{
background: #b3b0b0;
}
Html 视图:-
<div class="zippy" style="padding:40px;">
<div class="zippy-heading"
[class.expanded]="isExpandedBikes"
(click)="onBikeClick()">
{{bike}}
<span
class="fa"
[class.fa-angle-down] ="!isExpandedBikes"
[class.fa-angle-up]="isExpandedBikes"
(click)="onBikeClick()" style="font-size: 20px; position: absolute;right: 50px;"></span>
</div>
<div *ngIf="isExpandedBikes" class="zippy-body">
<li *ngFor ="let data of bikeContent">
{{data}}
</li>
</div>
</div>
组件文件:-
constructor() {
this.bike = "Bikes";
this.bikeContent=["My First Bike","My Second Bike","My Third Bike"];
}
对于组件文件中的按钮 Fxn:-
onBikeClick(){
this.isExpandedBikes =! this.isExpandedBikes;
}