deshabilitado en la etiqueta de entrada en angular no tiene efecto

Las propiedades no tienen ningún efecto cuando se usan disabledpropiedades formControlNamejunto con disabled.

formControlNameEs Angularuna directiva en , que se utiliza para vincular controles de formulario y manejar automáticamente el estado y el valor de los controles de formulario . Al formControlNamevincular un control de formulario usando , será responsable de controlar el estado deshabilitado del control.

Si desea deshabilitar un formControlNamecontrol de formulario que ha sido vinculado por , puede utilizar disable()el método:

import {
    
     Component } from '@angular/core';
import {
    
     FormControl } from '@angular/forms';

@Component({
    
    
  selector: 'my-component',
  template: `
    <form [formGroup]="myForm">
      <input formControlName="myControl" [disabled]="isDisabled">
      <button (click)="toggleDisabled()">Toggle Disabled</button>
    </form>
  `
})
export class MyComponent {
    
    
  myForm: FormGroup;
  isDisabled: boolean = false;

  constructor() {
    
    
    this.myForm = new FormGroup({
    
    
      myControl: new FormControl()
    });
  }

  toggleDisabled() {
    
    
    if (this.isDisabled) {
    
    
      this.myForm.get('myControl').enable();
    } else {
    
    
      this.myForm.get('myControl').disable();
    }
    this.isDisabled = !this.isDisabled;
  }
}

Úselo para myForm.get('myControl')vincular formControlNameel control de formulario y use enable()los métodos y disable()para alternar su estado deshabilitado. Cuando se hace clic en el botón "Alternar deshabilitado", isDisabledla propiedad alterna su valor para deshabilitar y habilitar el control.

Supongo que te gusta

Origin blog.csdn.net/weixin_45678402/article/details/132320087
Recomendado
Clasificación