angular - 仅禁用选中的复选框Angular 8
问题描述
在此处输入图像描述**是否有机会在角度 8 中禁用 p-listbox 上的选定/检查项目?通过添加或在 CSS 上。当我尝试在被禁用的完整项目列表上添加 [disabled] 属性时,我希望仅禁用列表中已检查的那些项目。** 2
<div class="ui-g">
<div class="ui-g-12 ui-md-6 ui-lg-2">
<label>Fields</label>
</div>
<div class="ui-g-12 ui-md-6 ui-lg-6">
<p-listbox *ngIf="!datasetLoader" [options]="mandatoryField" [(ngModel)]="selectedField"
[listStyle]="{'max-height':'150px'}" (onChange)="fieldSelection($event)" multiple="multiple"
formControlName="field" checkbox="checkbox" optionLabel="DisplayFieldName">
</p-listbox>
</div>
</div>
解决方案
p-listbox 选项是primeng SelectItem接口的基础,并且SelectItem 接口有一个名为disable 的属性,如果它设置为true,则与该项目相关的选项将被禁用。
模板
<p-listbox [options]="cars" [(ngModel)]="selectedItems"
[listStyle]="{'max-height':'250px'}" multiple="multiple"
(ngModelChange)="updateItems($event)" checkbox="checkbox">
</p-listbox>
零件
updateItems(selectedItems:string[]) {
selectedItems.forEach(v =>{
let car = this.cars.find( c => c.value === v);
car.disabled = true;
})
}
每次您选择一个项目时,我们都会将该选项禁用属性更新为 true
推荐阅读
- angular - 更新可观察对象后,如何通过更新 ngModel 来从 ngrx 为 ngModel 赋值?
- html - Ionic 中的选框效果
- javascript - 无法调用 JSON 对象的第一个元素
- vba - 基于文本输入汇总摘要任务
- html - 标题内容对齐/定位
- c++11 - 对于指向 std::set 容器中用户定义类的指针,自定义比较类无法正常工作
- twitter - netbeans proyect 上的 Twitter4J 无法导入 jar 文件
- java - 仅使用整数计算 2^n%k
- python - 如何遍历python中的列表并获取每两个关闭项之间的比较值的布尔列表?
- javascript - 你好,你能帮我提高这个艺术代码的效率吗?