Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 一个ng选项用法-选择一个属性而不是整个对象_Angularjs - Fatal编程技术网

Angularjs 一个ng选项用法-选择一个属性而不是整个对象

Angularjs 一个ng选项用法-选择一个属性而不是整个对象,angularjs,Angularjs,对于对象集合,我需要在选择列表中显示对象的一个属性。我当前的HTML/AngularJS代码类似于: <select id="input-platform-id" class="form-control" ng-model="currentFactory.platform_id" data-ng-init="currentFactirt.platform_id" data-ng-options="p.id for p in platforms track by p.id"> <

对于对象集合,我需要在选择列表中显示对象的一个属性。我当前的HTML/AngularJS代码类似于:

<select id="input-platform-id" class="form-control" ng-model="currentFactory.platform_id" data-ng-init="currentFactirt.platform_id" data-ng-options="p.id for p in platforms track by p.id">
</select>
[
  {        
    "created_by": "joe",
    "created_date": "2015-08-22T05:22:48Z",
    "id": 2,
    "name": "Test Platform"
  }    
  {       
    "created_by": "jobs",
    "created_date": "2015-10-06T23:45:50Z",
    "id": 23,
    "name": "Test Platform 1"
  }
]
AngularJS代码:

  <select id="input-platform-id"
                                    class="form-control"
                                    data-ng-model="selectedPlatformID"
                                    data-ng-init="selectedPlatformID = platforms[0].id"
                                    data-ng-options="platform.id as platform.name for platform in platforms">
  </select>

生成的HTML代码从以下行开始

 <option value="?" selected="selected" label></option>

剩余值字段从0、1、2、。。。在一个增量序列中,它不是id字段中的数据


提前感谢您的建议。

有一种语法可以让您在这两个世界中都做到最好

<select id="input-platform-id" 
        class="form-control" 
        ng-model="currentFactory.platform_id" 
        data-ng-init="currentFactirt.platform_id = platforms[0].id" 
        data-ng-options="p.id as p.name for p in platforms track by p.id">
</select>


selectedPlatformID:{{selectedPlatformID}
@lcycool感谢您的快速回复。但我没有看到正确生成的HTML代码:模型是整个平台对象,但在数据保存到控制器中后不是ID属性值。@TeeKai包括示例。@lcycool非常感谢您提供的详细示例。删除ng选项中的“跟踪方式…”后,选择将生效。初始值随有效数据一起提供。所以我改变了ng模型的初始化方式。现在一切正常。@cycool我刚在删除“跟踪方式…”后发现一个问题。第一行上的值字段是正确的过孔,零。数据中没有零值。还有两个“被选中的”。@TeeKai我不能理解你的情况。您的数据中是否有重复的id?在我的示例中也没有零id。