【问题标题】:How to print a specific element of an array in a html table with angularjs?如何使用angularjs在html表中打印数组的特定元素?
【发布时间】:2020-04-16 15:05:26
【问题描述】:

我现在正在学习 Angular 并被困在这里。我试过的是:

<tr ng-show="data in myData17.layouts | limitTo:2 | slice:1">
  <td>{{data.name}}</td>
  <td>{{data.cards[1].cardNo}}</td>
  <td>{{data.cards[1].cardType}}</td>
  <td>{{data.cards[1].ports[0].portNo}}</td>
  <td>{{data.cards[1].ports[0].portName}}</td>
  <td>{{data.cards[1].ports[0].portType}}</td>
  <td>{{data.cards[1].ports[0].portspeed}}</td>
  <td>{{data.cards[1].ports[0]["ds-scheduler-node-profile"]}}</td>                  
</tr>

其中 layouts 是一个数组,其中最多包含 10 个元素,但我想访问 index=1 中的数据。

【问题讨论】:

  • 不太清楚你想显示什么。你只需要一排吗?你能展示一个数据数组的样本吗? ng-show 没有那种语法,ng-repeat
  • bill,以一种简单的方式,我想在一个由 10 个索引组成的数组中只显示一个索引值。无论如何,谢谢,我得到了帮助!
  • 如果是这种情况,那么你甚至不需要使用ng-repeat。没有理由遍历整个数组
  • 我需要 ng-repeat 循环遍历该选定的索引,该索引又是一个数组

标签: arrays json angularjs html-table dynamic-tables


【解决方案1】:

您使用 ng-repeat 而不是 ng-show 进行循环,并使用 $index 访问项目。

<tr ng-repeat="data in myData17.layouts">
  <td ng-show="$index==0">{{data.name}}</td>
  <td ng-show="$index==0">{{data.cards[0].cardNo}}</td>
  <td ng-show="$index==0">{{data.cards[0].cardType}}</td>
  <td ng-show="$index==0">{{data.cards[0].ports[0].portNo}}</td>
  <td ng-show="$index==0">{{data.cards[0].ports[0].portName}}</td>
  <td ng-show="$index==0">{{data.cards[0].ports[0].portType}}</td>
  <td ng-show="$index==0">{{data.cards[0].ports[0].portspeed}}</td>
  <td ng-show="$index==0">{{data.cards[0].ports[0]["ds-scheduler-node-profile"]}}</td>                  
</tr>

【讨论】:

  • Ashish 这很好用。谢谢,但我可以使用内部的另一个 ng-repeat 动态打印这些 cardNo、cardType 等值,但不确定如何,有什么建议吗?
  • 是的,您也可以使用嵌套的 ng-repeat 打印这些值 {{ card.cardNo}}。对于结构数据,您必须相应地创建表格布局。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-02
  • 2020-09-27
  • 1970-01-01
  • 1970-01-01
  • 2018-07-24
相关资源
最近更新 更多