gpt4 book ai didi

angular - 从下拉列表中选择自定义选项后如何启用输入文本框?

转载 作者:搜寻专家 更新时间:2023-10-30 21:21:30 24 4
gpt4 key购买 nike

JSON 数据

 loginValue: any[] = [
{ value: 'col-1', viewValue: 'facebook' },
{ value: 'col-2', viewValue: 'google' },
{ value: 'col-1', viewValue: 'Custom' }
];

HTML

<mat-form-field>
<mat-select placeholder="login Value" [disabled]="isDisabled1">
<mat-option *ngFor="let loginvalue of loginValue" [value]="loginvalue.value">
{{loginvalue.viewValue}}
</mat-option>
</mat-select>
</mat-form-field>

<div class="col-md-2">
<mat-form-field class="Custom">
<input matInput placeholder="Enter Custom Value" [disabled]="isDisabled1">
</mat-form-field>

我的下拉选项中有三个值 facebook/google/Custom 当我选择 facebook 和 Google 时,文本框输入必须被禁用,当我点击 Custom 选项时,输入文本框被启用如何在 typescript 中编写逻辑或者一切都只能在 HTML 中完成?提前致谢!

最佳答案

您可以通过订阅您选择的选项并操作启用/禁用您的输入控件来尝试使用 Reactive Forms。

TS:

changeState() {
this.form.get('logintype').valueChanges
.subscribe(res => {
if (res === "Custom") { this.form.get('customInput').enable() }
else { this.form.get('customInput').disable() }
});
}

HTML:

<form [formGroup]="form">
<mat-form-field>
<mat-select formControlName="logintype" placeholder="Select an option" (selectionChange)="changeState()">
<mat-option *ngFor="let option of loginValue" [value]="option.viewValue">
{{ option.viewValue }}
</mat-option>
</mat-select>
</mat-form-field>

<mat-form-field>
<input matInput formControlName="customInput" type="text">
</mat-form-field>

</form>

这是关于 StackBlitz 的示例代码

关于angular - 从下拉列表中选择自定义选项后如何启用输入文本框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53605894/

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