*
引用kendoUI-combobox组件,并过滤
定义组件里需要用到的属性:
allowCustom:是否允许用户输入不在数据集中的值,默认false
data:数据集
filterChange:定义过滤方法
filterable:是否过滤
valuePrimitive:是否原始类型数据
ngStyle:样式
<kendo-combobox
[allowCustom]="false"
[data]="filterData"
(filterChange)="modelChanged.next($event)"
[(ngModel)]="value"
[filterable]="true"
[valuePrimitive]="true"
[ngStyle]="ngStyle"
></kendo-combobox>
public options: any[];
public ngStyle = {'width': '100%'};
public filterData = [];
modelChanged: Subject<object> = new Subject<object>();
handFilter(value) {
let datas = this.options;
this.filterData = [];
if (value)
datas = datas.filter(i => i.indexOf(value) != -1);
datas.forEach(i => {
this.filterData.push(i);
});
}
ngOnInit() {
this.Svc.query("基础代码#地区").then(data => {
this.options = [];
data.forEach(m => {
this.options.push(m["地区名称"]);
})
this.filterData = this.options;
});
this.modelChanged.debounceTime(300).distinctUntilChanged().subscribe(m => this.handFilter(m));
}
sea.