désactivé dans la balise d'entrée en angulaire ne prend pas effet

Les propriétés n'ont aucun effet lors de l'utilisation disabledde propriétés formControlNameconjointement avec disabled.

formControlNameEst Angularune directive dans , utilisée pour lier les contrôles de formulaire et gérer automatiquement l'état et la valeur des contrôles de formulaire . Lors de formControlNamela liaison d'un contrôle de formulaire à l'aide de , il sera responsable du contrôle de l'état désactivé du contrôle.

Si vous souhaitez désactiver un formControlNamecontrôle de formulaire lié par , vous pouvez utiliser disable()la méthode :

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;
  }
}

Utilisez pour myForm.get('myControl')lier formControlNamele contrôle de formulaire et utilisez enable()les méthodes et disable()pour basculer son état désactivé. Lorsque vous cliquez sur le bouton « Toggle Disabled », isDisabledla propriété change de valeur pour désactiver et activer le contrôle.

Je suppose que tu aimes

Origine blog.csdn.net/weixin_45678402/article/details/132320087
conseillé
Classement