如何在td内部重复数组,以便t​​d包含所有数组值

时间:2015-07-16 16:36:06

标签: javascript angularjs angularjs-ng-repeat ng-repeat

我需要ng-repeat一个td内的一些数组{"Locations":["San Francisco, CA","Los Angeles, CA"]}。例如td,其中<td>San Francisco, CA,Los Angeles, CA</td> 需要看起来像

{"Locations":["Boston","Los Angeles","London","New York","Hongkong","Washington","Seattle","Atlanta","San Francisco","Sydney","Austin"]}

td<td>Boston,Los Angeles,London,New York, Hongkong, Washington, Seattle, Atlanta, San Francisco, Sydney, Austin</td> 需要看起来像

td

我尝试了很多不同的东西,但他们似乎都在重复td(ng-repeat-start="location in currentSchools.Locations") {{location}} ...这里有一些我试过的东西:

tr(ng-repeat="location in currentSchools.Locations")
  td
    | {{location}}  

save

5 个答案:

答案 0 :(得分:3)

您可以在<span>元素中使用<td>标记,并在span元素上使用ng-repeat

答案 1 :(得分:1)

ng-repeat将重复为集合中的每个元素声明的html元素。

您似乎希望在元素中进行更多字符串连接

所以你应该在你的控制器中有一个方法,如:

$scope.schoolLocationsList = function() {
  return $scope.Locations.join();
}

然后在你的html中你应该做

<td>{{ schoolLocationsList() }}</td>

答案 2 :(得分:0)

您使用td等其他元素在span内循环。例如:

<table>
    <tr>
        <td>
            <span ng-repeat="location in currentSchools.Locations">{{location}}, </span>
        </td>
    </tr>
</table>

但是这会给你一个逗号。

答案 3 :(得分:0)

您可以在模板中使用数组方法:

<td>{{ currentSchools.Locations.join(', ') }}</td>

答案 4 :(得分:0)

尝试做 <table><td ng-repeat="location in locations">{{location}}</td></table>

您只需要将其格式化为包含逗号或任何间距,但希望按照您希望的方式列出您的元素。

Here's以笔为例。