【问题标题】:click event not working in PrimeNg List box inside template单击事件在模板内的 PrimeNg 列表框中不起作用
【发布时间】:2021-04-18 16:38:36
【问题描述】:

我正在尝试在 Prime Ng 的列表框模板内添加点击事件,但下面的事件未被监听是 stackblitz 代码和演示链接。

下面是代码

   <h5>Single</h5>
<p-listbox [options]="cities" [(ngModel)]="selectedCity" optionLabel="name" [style]="{'width':'15rem'}">
    <ng-template let-country pTemplate="item">
        <div class="country-item">
            <div>{{country.name}}</div>
            <a (click)="editProject('hii')"><i class="pi pi-pencil"></i></a>
        </div>
    </ng-template>
</p-listbox>

https://stackblitz.com/edit/primeng-listbox-demo-dxcpdt?file=src/app/app.component.ts

【问题讨论】:

    标签: angular primeng angular10


    【解决方案1】:

    问题在于 prime-ng 样式,p-listbox 有一个 .p-ink 类,它会弹出整个列表项,使其无法点击。因此,可以通过隐藏.p-ink 来使&lt;a&gt; 可点击。

    用这个替换你的 ts 中的样式:

      styles: [
        `
          :host ::ng-deep .ui-listbox {
            width: 20em;
            z-index: -1 !important;
          }
          :host ::ng-deep .p-ink {
            display: none !important;
          }
        `
      ]
    

    【讨论】:

    • 感谢这对我的帮助就像一个奇迹..!!
    • @DivinIrakiza 这不再适用于最新的 PrimeNg 版本,版本 11 和 12 的任何解决方案?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多