NG-ZORRO下拉多选框选择选项后点击确定后让下拉选择框失去焦点
时间: 2023-10-01 08:06:02 浏览: 224
你可以在点击确定后手动让下拉选择框失去焦点。可以使用 Angular 中的 ViewChild 装饰器来获取选择框的引用,然后在确认按钮的点击事件中调用 blur() 方法来让其失去焦点。
在 HTML 模板中,给确认按钮添加点击事件:
```
<button (click)="confirm()">确定</button>
```
在组件中,使用 ViewChild 装饰器获取下拉选择框的引用,并在 confirm() 方法中调用 blur() 方法:
```
import { Component, ViewChild } from '@angular/core';
import { NzSelectComponent } from 'ng-zorro-antd/select';
@Component({
selector: 'app-my-component',
template: `
<nz-select
#mySelect
[nzMode]="'multiple'"
[(ngModel)]="selectedOptions"
(ngModelChange)="onSelectedOptionsChange()"
>
<nz-option nzValue="1" nzLabel="Option 1"></nz-option>
<nz-option nzValue="2" nzLabel="Option 2"></nz-option>
<nz-option nzValue="3" nzLabel="Option 3"></nz-option>
</nz-select>
<button (click)="confirm()">确定</button>
`
})
export class MyComponent {
@ViewChild('mySelect', { static: false })
mySelect: NzSelectComponent;
selectedOptions = [];
onSelectedOptionsChange() {
console.log(this.selectedOptions);
}
confirm() {
// 确认按钮点击事件
this.mySelect.blur(); // 让下拉选择框失去焦点
}
}
```
阅读全文