javascript - 如何以角度在编辑表单中填充单选按钮选定的值
问题描述
我是角度新手,请帮助我。我尝试了很多,但未能在编辑表单中预填充单选按钮选择的值。请找到以下 HTML 代码:
HTML 代码:
`
<div class="col-md-6">
<div class="col-sm">
<fieldset class="form-group">``
<div style="margin-top: 20px;">
<label id="example-radio-group-label">Typical Service Cost Range</label>
<mat-radio-group aria-labelledby="example-radio-group-label" class="example-radio-group radio-list"
formControlName="service_cost"><br>
<mat-radio-button class="example-radio-button radio-list" value="Up to 10,000"> Up to 10,000 AED </mat-radio-button><br>
<mat-radio-button class="example-radio-button radio-list" value="Up to 50,000"> Up to 50,000 AED </mat-radio-button><br>
<mat-radio-button class="example-radio-button radio-list" value="Up to 10,000"> Up to 100,000 AED </mat-radio-button><br>
<mat-radio-button class="example-radio-button radio-list" value="Up to 104,000"> Up to 1004,000 AED </mat-radio-button><br>
</div>
<div *ngIf="customerForm.controls.service_cost.invalid && (customerForm.controls.service_cost.dirty || customerForm.controls.service_cost.touched || photo_submit)"
class="">
<div *ngIf="customerForm.controls.service_cost.errors.required"> Please select the Services cost range </div>
</div>
</fieldset>`
在js中:
this.customerForm.controls['service_cost'].setValue(data.result.service_cost);
解决方案
您的代码中有两个主要错误。
首先,您已设置checked
所有单选按钮。这意味着将检查所有内容。
其次,你所有的单选按钮value
都是一样的。哪个必须是唯一的。
因此,您mat-radio-group
的 HTML 将是:
<mat-radio-group aria-labelledby="example-radio-group-label" class="example-radio-group radio-list" formControlName="service_cost"><br>
<mat-radio-button class="example-radio-button radio-list" value="Up to 10,000"> Up to 10,000 AED </mat-radio-button><br>
<mat-radio-button class="example-radio-button radio-list" value="Up to 50,000"> Up to 50,000 AED </mat-radio-button><br>
<mat-radio-button class="example-radio-button radio-list" value="Up to 100,000"> Up to 100,000 AED </mat-radio-button><br>
<mat-radio-button class="example-radio-button radio-list" value="Up to 500,000"> Up to 500,000 AED </mat-radio-button><br>
<mat-radio-button class="example-radio-button radio-list" value="Up to 1,000,000"> Up to 1,000,000 AED </mat-radio-button><br>
</mat-radio-group>
并确保您使用[formGroup]="customerForm"
您的form
标签。
有关详细信息,请参阅StackBlitz上的演示。
推荐阅读
- javascript - javascript函数和javascript对象之间的主要核心区别是什么?
- javascript - javascript:使用我自己的确认框和功能确认功能
- jboss - 无法从 JBOSS 访问 CMS
- php - 从字符串中删除单引号和双引号
- oauth - 获取 Bearer 令牌后无法发出获取请求 - 401 错误“范围不足”
- rabbitmq - RabbitMQ Shovel 连接失败
- php - 从字符串 php wordpress 获取 ID
- c# - webapi 参数为空
- dialogflow-es - 如何在 dialogflow v2 api 中从内联编辑器设置 outputContext
- ios - 快速嵌套重复循环