如果在第一个字段下拉列表中选择第三个下拉值,则启用第二个字段。
所以,现在,如果我通过选择下拉列表的第三个值来给出值,并且给第二个字段一个值,它就被取下来了。
现在我转到edit函数并更改一些其他值,因为第二个字段被禁用,我将获得ass空值或未定义值。
所以现在,如果第一个字段在编辑模式下没有更改,我希望第二个字段具有它的值。
HTML:
TS:
private FormInit() {
//Add
if (!this.Details) {
this.detailsForm = this.FB.group({
Type: ['', Validators.required],
ID: [{ value: 0, disabled: true }],
});
} else {
// edit
this.detailsForm = this.FB.group({
Type: [this.Details.data.Type, Validators.required],
SourceID: [{ value: this.Details.data.ID, disabled: true }],
});
if (this.Details.mode == 'readOnly') {
this.detailsForm.disable();
}
}
}
添加和编辑功能:
public save() {
let addParams = this.detailsForm.value;
addParams.Type = addParams.Type ? addParams.Type: 0;
this.Service.add(addParams).subscribe(res => {
console.log(res);
this.successMessagePopUp(res);
})
}
public update() {
let updateParams = this.detailsForm.value;
this.Service.update(updateParams).subscribe(res => {
this.successMessagePopUp(res)
})
}
希望这个cn可以通过一种方式解决,如果选择了第三个下拉值,那么在编辑模式下,如果选择了其他值,我们可以保持第二个字段启用并禁用oly吗?