如何在标签中使用表格控件名称-角反应形式

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格式返回

如何使用DataGrid控件

测试角模板驱动形式

串口屏开发之数据记录控件的使用总结——如何以表格形式记录和显示告警数据

串口屏开发之数据记录控件的使用总结——如何以表格形式记录和显示告警数据

如何使用ListView