【问题标题】:Ng-repeat is not working as expected in html table?Ng-repeat 在 html 表中没有按预期工作?
【发布时间】:2017-06-20 23:35:07
【问题描述】:

为什么这个简单的表格结构在 angularjs 中不起作用?没有任何行被数据填充。如果我将 span 替换为 tr,它可以正常工作,但我的第三列 Percent 不适合。

<table class="table table-hover">
 <tbody>
    <tr>
         <th>Grade</th>
         <th>Point</th>
         <th>Percent</th>
   </tr>
   <tr>
          <span ng-repeat="gdata in gradepoints">
             <td ng-repeat="(grade, gp) in gdata"> {{grade | uppercase}} </td>
             <td ng-repeat="(grade, gp) in gdata"> {{gp}} </td>
           </span>
           <span ng-repeat="pdata in percents">
              <td ng-repeat="(grade, perc) in pdata"> {{perc}} </td>
           </span>
    </tr>
   </tbody>
 </table>

【问题讨论】:

  • 请提供一些示例数据,很难看出您要做什么,但我假设您有两个数组,gdata 和 pdata,并且 gdata[0] 对应于等级和 gp pdata[0] 等中的百分比相同。对吗?
  • @JasonGoemaat 实际上我已经重新构建并简化了我的 api 和 json,所以这个问题不再存在。

标签: javascript angularjs html-table


【解决方案1】:

试试这个:

<tr ng-repeat="gdata in gradepoints">
    <td>{{gdata.grade | uppercase}}</td>
    <td>{{gdata.gp}}</td>
    <td>{{pdata[$index].perc</td>
</tr>

您希望 gdata 数组中的每个元素都有一行,因此 ng-repeat 需要位于 &lt;tr&gt; 元素上。如果两个数组不同步,您可以在控制器中创建一个函数来返回您需要的 pdata 元素:

$scope.findPdata(gdata, index) {
    // ... do your magic here to find the pdata element you want
    return result;
}

<td>{{findPdata(gdata, $index)}}</td>

【讨论】:

    【解决方案2】:

    从下面猜测:

            <tr>
                      <th>Grade</th>
                     <th>Point</th>
                      <th>Percent</th>
           </tr>       
    

    我猜你的表有 3 列,所以你的每一行有 3 列?

    在这种情况下使用以下

    <tr ng-repeat="gdata in gradepoints">
    
      <td>{{gdata.grade | uppercase}}</td>
     <td>{{gdata.gp}}</td>
       <td>{{gdata.percent}}</td>
    
    
    </tr>       
    

    为使上述工作,您的成绩点必须是一个包含对象的数组,每个对象具有 3 个属性,即等级、gp、百分比

    【讨论】:

    • 是的 3 列。成绩点和百分比是两个不同的数组。
    • 如果你可以用示例数据发布成绩点对象的排列,我很乐意提供帮助
    猜你喜欢
    • 2015-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-14
    • 2017-08-20
    • 2018-04-24
    • 1970-01-01
    相关资源
    最近更新 更多