在给定数组中的动态索引时,ng-repeat不起作用

时间:2013-08-09 15:20:20

标签: javascript angularjs

我在$scope.types(示例数据)中有这个数组:

[
  {
    "id": 1,
    "description": "Cat",
    "property_type": [
      {
        "id": 1,
        "description": "Nickname",
      },
      {
        "id": 2,
        "description": "Age",
      },
      {
        "id": 3,
        "description": "Color",
      }
    ]
  }
]

我想使用该类型的属性填充ng-repeat。这是我做的:

<div ng-repeat="property in types[parseInt($('#select_type').val())].property_type">
  {{property.description}}
</div>

此代码不显示任何内容。但是,如果我将$('#select_type').val()替换为0,这是数组中对象的偏移量,则可以正常工作。我不明白的是,如果我在控制台中查看$('#select_type').val()的价值是什么,我得到"0" ...所以它应该可以工作,除非我对Angular不对(这可能是这种情况)。

如果可以提供帮助,请点击此处:

<select ng-options="type.id as type.description for type in types" ng-model="current_data.object_type_id" id="select_type">
  <!-- Generated by ng-options, not hardcoded -->
  <option value="0" selected="selected">Cat</option>
  <option value="1">Dog</option>
</select>

有什么想法吗?

2 个答案:

答案 0 :(得分:3)

尝试使用以下代码:


<div ng-repeat="property in current_data.property_type">
   {{property.description}}
</div>
<select ng-options="type.description for type in types" ng-model="current_data" id="select_type">
<option value="">select</option>
</select>

答案 1 :(得分:0)

尝试使用ng-repeat

<div ng-repeat="property in types[current_data.object_type_id].property_type">
  {{property_type.description}}
</div>