如何在agGrid组件中设置筛选。我看到了一个来自agGrid的示例,但它是用javascript编写的。https://www.ag-grid.com/angular-grid-filtering/index.php
但是看起来我不能使用下面的ts代码来工作。
agGrid.component.ts
import {Component} from 'angular2/core';
import {AgGridNg2} from 'ag-grid-ng2/main';
import {GridOptions} from 'ag-grid/main';
import 'ag-grid-enterprise/main';
@Component({
selector: 'app',
templateUrl: 'app/partials/agGrid/agGrid.html',
directives: [AgGridNg2]
})
export class AgGridComponent {
columnDefs = [
{ headerName: "Contact Name", field: "make" },
{ headerName: "Company Name", field: "model" },
{
headerName: "Last Event",
field: "price",
cellClass: 'rightJustify',
cellRenderer: function (params: any) {
return '$' + params.value.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ","); //thanks http://stackoverflow.com/users/28324/elias-zamaria
}
},
{ headerName: "Contact Email", field: "model" },
{ headerName: "Work Phone", field: "model" }
];
// put data directly onto the controller
rowData = [
{ make: "Toyota", model: "Celica", price: 35000 },
{ make: "Ford", model: "Mondeo", price: 32000 },
{ make: "Porsche", model: "Boxter", price: 72000 }
];
gridOptions = {
columnDefs: this.columnDefs,
rowData: null,
enableFilter: true
};
values='';
onKey(event:any) {
this.values = event.target.value;
this.gridOptions.columnDefs.setQuickFilter(this.values);
}
searchValue='';
}grid.html
<input placeholder="Filter..." type="text"
[value]="searchValue"
(input)="searchValue = $event.target.value"
/>
<ag-grid-ng2
class="ag-fresh"
enable-sorting
enable-filter
style="height: 300px"
[gridOptions]="gridOptions"
(cellClicked)="onCellClicked()"
[columnDefs]="columnDefs"
[rowData] = "rowData">
</ag-grid-ng2>
发布于 2019-03-26 23:09:53
将ngModel变量绑定到"quickFilterText“属性。"quickFilterText“应该在将来改成"quickFilter”。
<input type="text"
[(ngModel)]="searchValue" placeholder="quick filter..." />
<ag-grid-angular
class="data-grid ag-theme-balham"
[rowData]="rowData | async"
[columnDefs]="columnDefs"
[defaultColDef]="defaultColDef"
[quickFilterText]="searchValue"
>
</ag-grid-angular>发布于 2017-03-14 00:43:20
我猜你已经解决了这个问题,但是对于那些正在寻找的人来说,你可以将你的输入框双向绑定到你代码中的变量。
您的HTML将如下所示:
<input type="text" (keyup)="onQuickFilterChanged()"
[(ngModel)]="quickSearchValue" placeholder="quick filter..." /> 你的TS代码是这样的:
quickSearchValue: string = '';
private onQuickFilterChanged() {
this.gridOptions.api.setQuickFilter(this.quickSearchValue);
}希望这能有所帮助。
https://stackoverflow.com/questions/36339414
复制相似问题