2

我正在懒惰地加载 PrimeNg turbotable。一切正常。但我想用一些默认的过滤器值加载数据说:我想用记录的用户 ID加载数据。我正在使用 [(ngModel)] 动态设置文本过滤器或 Dropdwon 过滤器的值。但是我没有看到 TurboTable 事件的过滤器有任何变化。一切都是空的。

<p-table #tt [value]="data" [lazy]="true" (onLazyLoad)="loadDataLazily($event)"
    [paginator]="true"
        [rows]="10 [totalRecords]="totalRecords">
          <ng-template pTemplate="header">
              <tr>
                <th *ngFor="let col of cols" [ngSwitch]="col.field">
                  {{col.header}}
                </th>
              </tr>
            <tr>
           <th *ngFor="let col of cols" [ngSwitch]="col.field">
            <input *ngSwitchCase="'NAME'" pInputText style="width:100%;" type="text"
                (input)="tt.filter($event.target.value, 'NAME')">
             <p-dropdown *ngSwitchCase="'USERID'" [options]="ids" [style]="{'width':'100%'}"
                 [(ngModel)]="selectedUserId" (onChange)="tt.filter($event.value, 'USERID', 'equals')">
             </p-dropdown>
              </th>
             </tr>
            </ng-template>
...
</p-table>

我在下面尝试过,但在尝试的ngModel值中没有运气而不是$event.value

    <p-dropdown *ngSwitchCase="'USERID'" [options]="ids" 
[style]="{'width':'100%'}"
                     [(ngModel)]="selectedUserId" (onChange)="tt.filter(selectedUserId, 'USERID', 'equals')">
                 </p-dropdown>
4

0 回答 0