如何动态引用元素的动态生成的id

时间:2018-04-13 18:28:49

标签: html angularjs web

我有这段代码:

    <div class="col-lg-12" data-ng-repeat="tda in allTipoDatosAlimentos">
        <div class="box dark">
           <header>
              <div class="icons"><i class="icon-edit"></i></div>
                  <h5>
                        <a class="accordion-toggle minimize-box" data-toggle="collapse" href="#div1">{{tda.nombreTipoDato}}
                        </a>
                  </h5>
                  <div class="toolbar">
                      <ul class="nav"> 
                         <li>
                             <a class="accordion-toggle minimize-box" data-toggle="collapse" href="#div1">
                                <i class="icon-chevron-down"></i>
                             </a>
                         </li>
                      </ul>
                   </div>
          </header>
          <div id="div1" class="accordion-body collapse body">
              <div class="input-group" data-ng-repeat="nut in tda.nutrientesList">
                  <span class="input-group-addon">
                       <abbr title="{{nut.nombre}}">{{nut.abreviatura}}</abbr> 
                  </span>
                  <input type="text" class="form-control"/>
                        <span class="input-group-addon">{{nut.idUnidadMedida.unidadMedida}}
                        </span>
              </div>
          </div>
        </div>
</div>

我需要动态生成id。我知道它可以通过以下方式完成:id = {{tda.idTipoDatosAlimentos}} ....这很好,但我怎么能引用它? 我试过但是IDE给出了这个错误: '#{...}不允许在模板文本正文中' 我真的需要帮助。

1 个答案:

答案 0 :(得分:0)

我发现如何解决我的问题,

<div id="{{'div' + tda.idTiposDatosAlimentos}}" class="accordion-body collapse body">

我将此ID设置为表达式{{&#39; div&#39; + tda.idTipoDatosAlimentos}},这会生成此ID:

<div id='div1'>

表示ng-repeat中的第一个元素。 然后要引用该ID,我可以这样做:

<a href="#div{{tda.idTiposDatosAlimentos}}">

再次产生这个:

<a href='div1'>

表示ng-repeat的第一个元素。 :) 希望有一天能为别人服务。