Is there a way to disable and make all fields non editable
(input / mat-select / textfield / option/input/mat-checkbox etc)
inside a Form
by telling only the parent div name in Angular / Angular-material ? (cannot editing them)
@Component({
templateUrl: './leaseholder.component.html'
})
export class LeaseholderComponent implements OnInit, IFormDirtyWarningComponent {
leaseholderForm: FormGroup;
constructor(private router: Router, private formBuilder: FormBuilder) {
this.createLeaseholderForm();
}
createLeaseholderForm() {
this.leaseholderForm = this.formBuilder.group({
civility: [this.identityModel.civility],
firstName: [this.identityModel.firstName, Validators.compose([Validators.pattern("[^\\d]+")])],
lastName: [this.identityModel.lastName, Validators.compose([Validators.pattern("[^\\d]+")])],
birthName: [this.identityModel.birthName, Validators.compose([Validators.pattern("[^\\d]+")])],
birthDate: [this.identityModel.birthDate],
birthPlace: [this.identityModel.birthPlace, Validators.compose([Validators.pattern("[^\\d]+")])],
nationality: ['FR', this.identityModel.nationality],
endOfStay: [this.identityModel.endOfStay]
});
}
<form [formGroup]="leaseholderForm" (ngSubmit)="onSubmit()">
<div class="mat-radio-group-inverted">
<mat-radio-group formControlName="civility">
<mat-radio-button color="primary" value="MR">M.</mat-radio-button>
<mat-radio-button color="primary" value="MME">MME.</mat-radio-button>
</mat-radio-group>
</div>
<mat-form-field>
<input matInput upperCaseInput placeholder="Nom d'usage" formControlName="lastName">
</mat-form-field>
...........................
.......... example
</form>