如何在标签中使用表格控件名称-角反应形式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在标签中使用表格控件名称-角反应形式相关的知识,希望对你有一定的参考价值。
我使用的是角反应形式,在我的表单中,一个包含标签的字段用于填充值,其余所有字段均包含表单控件名称。我正在尝试通过订阅设置服务中的数据。因此,在这里,我能够通过控件名称(除label之外)填充所有表单数据。由于标签不包含表单控件名称,因此我无法为其设置值。
这是我的表格:
<div [formGroup]="myForm">
<label>
Roll number
</label>
<label>
rollnum
</label>
</div>
通常,我现在正在设置其他类似的字段myForm.control.formcontrolname.setValue('value');
如果是相同的组件,则可以为rollnum分配值,以便填充该值,但是如何从其他服务中为rollnum设置值,并且可以使用任何方法为该标签使用formcontrolname。
答案
查看您的评论,我了解到,只有从服务加载数据后,才需要在rollnum上显示内容。
请在下面尝试此代码在您的ts文件中,声明一个变量调用dataLoaded。此变量将是一个布尔值,可以包含true和false值。最初,我们将其设置为false。
dataLoaded : boolean = false;
[下一步,我们将调用该服务以加载数据。
serviceToLoadData()
this.serviceCall.getdata().subscribe((data)=>
// here you would do the processing of the data and the data will be loaded to
//rollnum.
//Once the data is loaded set the value of dataLoaded to true.
this.dataLoaded = true;
);
在您的html文件中
<div [formGroup]="myForm">
<label class="bx--label" style ="margin-left: 4rem">
Roll number
</label>
<label *ngIf="dataLoaded" class="bx--label" style ="margin-left: 1rem">
rollnum
</label>
</div>
在这种情况下,只有在dataLoaded为true时,才会显示标签。
您可以将相同的原理应用于div。在div上,您可以应用ngIf。
希望这可以解决问题。
以上是关于如何在标签中使用表格控件名称-角反应形式的主要内容,如果未能解决你的问题,请参考以下文章
如何使用jquery获取html表单的每个客户端控件的名称name和value值?以json格式返回
串口屏开发之数据记录控件的使用总结——如何以表格形式记录和显示告警数据