Angular 4选择禁用不起作用

标签 angular drop-down-menu

我想在 Angular 4 中禁用 select。 我写了如下代码,但 select 没有被禁用。

在组件中:

import { FormBuilder, Validators, FormGroup } from '@angular/forms';    

this.eventForm = this.formBuilder.group({
    // ... some codes ...
    'state': [true, Validators.required],
    'stepStrengh': [10, Validators.nullValidator]
});

在 HTML 中:

<input type="radio" formControlName="state" [value]="true"/> Enable Step
<input type="radio" formControlName="state" [value]="false"/> Disable Step

<select formControlName="stepStrengh" [disabled]="!eventForm.get('timeslots').value">
  <option [ngValue]="10">10 steps</option>
  <option [ngValue]="15">15 steps</option>
</select>

当我将 [disabled]="true" 添加到 option 标签时,该选项标签被禁用,但我想禁用 select 标记自身。

我试过这样-

<select formControlName="stepStrengh" disabled="{{state ? '': 'disabled'}}">

但这也不起作用,当我将状态变量从 true->falsefalse->true 更改

最佳答案

在阅读了一些文档和其他内容后,我发现这种方法对我很有效

<select [attr.disabled]="state ? '' : null" formControlName="stepStrengh" >

希望对您有所帮助。

Here is a link to stackblitz

关于Angular 4选择禁用不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49087887/

相关文章:

javascript - 为什么我的构造函数参数私有(private)类成员在运行时未定义?

css - 在下拉菜单选项上添加滚动条

javascript - 在 :value of <option> tag in vuejs 中使用 split()

css - 下拉菜单和圆 Angular

angular - 如何将哈巴狗添加到 angular-cli?

javascript - Angular JS 2.0 基于用户输入切换样式表

angular - 如何设置构造函数使其没有太多参数?

javascript - 分配给组件属性时不执行订阅

jquery - 如何在基于 <ul> 的导航菜单下将图形居中?

c# - 菜单项的工具提示被子菜单下拉列表隐藏