is_edit = true
비활성화하려면 ts 에서 …
<input [disabled]="is_edit=='false' ? true : null" id="name" type="text" [(ngModel)]="model.name" formControlName="name" class="form-control" minlength="2">
단순히 true
또는 기반으로 입력을 비활성화하고 싶습니다 false
.
나는 다음을 시도했다 :
[disabled]="is_edit=='false' ? true : null"
[disabled]="is_edit=='true'"
[disabled]="is_edit"
답변
attr.disabled
대신을 사용해보십시오.disabled
<input [attr.disabled]="disabled ? '' : null"/>
답변
나는 문제를 알아 냈다고 생각합니다.이 입력 필드는을 포함했기 때문에 반응 양식 (?)의 일부입니다 formControlName
. 이것은 입력 필드를 비활성화하여 수행하려는 작업이 작동하지 않음을 의미합니다 ( is_edit
예 : [disabled]="is_edit"
다른 경우에는 작동하는 시도 ). 양식으로 다음과 같은 작업을 수행해야합니다.
toggle() {
let control = this.myForm.get('name')
control.disabled ? control.enable() : control.disable();
}
그리고 is_edit
모두 잃습니다 .
입력 필드를 기본값으로 비활성화하려면 양식 컨트롤을 다음과 같이 설정해야합니다.
name: [{value: '', disabled:true}]
여기 플런 커가 있습니다
답변
간단히 할 수 있습니다.
<input [disabled]="true" id="name" type="text">
답변
일부 명령문에서 입력을 비활성화하려는 경우. 사용 [readonly]=true
또는 false
대신 사용할 수의.
<input [readonly]="this.isEditable"
type="text"
formControlName="reporteeName"
class="form-control"
placeholder="Enter Name" required>
답변
<input [disabled]="is_edit" id="name" type="text">
<button (click)="is_edit = !is_edit">Change input state</button>
export class AppComponent {
is_edit : boolean = false;
}
답변
나는 당신이 false
대신에 의미했다고 생각합니다'false'
또한, [disabled]
을 기대하고있다 Boolean
. 당신은 반환하지 않도록해야합니다 null
.
답변
위 의 fedtuck의 수락 된 답변 에 대한 Belter의 의견에 대한 답변 입니다.
이것은 Mozilla 문서 와 관련하여 내가 아는 어떤 것도 사실이 아닙니다.
disabled는 true 또는 false와 같습니다.
disabled 속성이 있으면 값에 관계없이 요소가 비활성화됩니다. 이 예 보기
<input placeholder="i can be changed"/>
<input disabled placeholder="i can NOT be changed"/>
<input disabled="true" placeholder="i can NOT be changed"/>
<input disabled="false" placeholder="i can NOT be changed"/>