【问题标题】:Angularjs. ng-switch not working inside a table角。 ng-switch 在表格内不起作用
【发布时间】:2013-10-14 14:42:05
【问题描述】:

无论如何我可以让 ng-switch 在桌子内工作吗?表格示例不工作,但 ul 示例工作正常。问题是我真的需要表格示例。我正在使用角度 1.07。

<table>
  <tbody ng-repeat="item in items">

  <tr><td>{{ item.heading }}</td></tr>

  <tr ng-repeat="row in item.fields" ng-switch on="row.nb">

  <div ng-switch-when="01">
    <td>{{ row.nb }}</td>
  </div>

  </tr>

  </tbody>

</table>

<ul ng-repeat="item in items">
  <li ng-repeat="row in item.fields" ng-switch on="row.nb">

  <div ng-switch-when="01">
    {{ row.nb }}
  </div>

  </li>
</ul>

【问题讨论】:

    标签: angularjs html-table ng-switch


    【解决方案1】:

    您需要将 ng-switch-when 移动到 td,否则它将忽略它,因为 div 不是 tr 内的有效标记。 https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tr

    去掉div,改成:

     <td ng-switch-when="01">{{ row.nb }}</td>
    

    演示:http://plnkr.co/edit/yHkBGekjgGDts8pNtekJ?p=preview

    【讨论】:

    • 感谢您的回答。我的例子被简化了。在实际代码中,我有几个 TD:s。也许我可以用新表格替换 TD:s - 但我想表格中的单元格将无法与其他表格正确对齐。无论如何,我很幸运只有一个 TD 会根据参数 (row.nb) 发生变化,因此您的解决方案对我来说很好。非常感谢。
    • 表格会变得很麻烦。您可能会考虑使用网格(引导程序),但这完全取决于您的要求。
    • 这也是个好主意。我已经在使用 twitter 引导程序,所以很有可能。奇怪的是,我最近考虑过这一点,并且通过该解决方案,我将摆脱在 ng-repeat 中创建的几个 tbody。谢谢,我会评估这两种解决方案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-20
    • 2017-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-05
    相关资源
    最近更新 更多