gpt4 book ai didi

angular - 获取表单控件的名称

转载 作者:太空狗 更新时间:2023-10-29 17:46:12 25 4
gpt4 key购买 nike

我正在使用 Angular react 形式,我需要比较开始日期“开始日期”和结束日期“结束日期”,两个控件都在“dateLessThan”函数中验证,但问题是我不知道怎么求控正在评价

//Some stuff
public fechaInicio = new FormControl('', [
Validators.required
, this.dateLessThanTo

]);
public fechaFin = new FormControl('', [
Validators.required
, this.dateLessThan
]);



createForm() {
this.contratoForm = this.formBuilder.group({
fechas: this.formBuilder.group({
fechaInicio: this.fechaInicio,
fechaFin: this.fechaFin
}, { validator: this.dateLessThan('fechaInicio', 'fechaFin') }),

});
}

这里我需要知道比较日期的控件名称:

 dateLessThanTo(fieldControl: FormControl) {
//
//if (fechaInicio.value > FechaFin.value){
// return true;
//}
//else{
// return false;
// }

}

//Some stuff

最佳答案

从控件中获取父组,然后与当前控件进行比较:

  dateLessThanTo(control: AbstractControl) { 
let name = this.getName(control);

...
}

private getName(control: AbstractControl): string | null {
let group = <FormGroup>control.parent;

if (!group) {
return null;
}

let name: string;

Object.keys(group.controls).forEach(key => {
let childControl = group.get(key);

if (childControl !== control) {
return;
}

name = key;
});

return name;
}

关于angular - 获取表单控件的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47832981/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com