使用angular_s中的(键,值)ng-options设置<select>的默认值

时间:2017-06-06 18:01:15

标签: javascript angularjs

我想为以下选择设置默认值: &lt; select ng-model =&#34; selected&#34;       ng-options =&#34; key as value.Name for(key,value)in attributes&#34;&gt; &LT; /选择&GT; 我使用属性作为地图,其中id为键,对象为value。我想在选择框中显示值的名称,但是将键绑定到模型,因为当我访问选中时,我需要id,而不是名称。 这有效,但现在我想设置一个默认值。默认值还必须显示value.Name,但绑定id。 根据这个,它应该是这样的: $ scope.selected = {1:{Name:&#34; Attribute1&#34;}}; 我还没有成功。我将不胜感激任何帮助。 编辑: 我的属性变量看起来像这样(TypeScript): export interface IAttributes {     [id:number]:IAttributeProperties; } 导出接口IAttributeProperties {     名称:字符串;     DataType:string; }

2 个答案:

答案 0 :(得分:0)

您可以使用ng-init初始化它:

<select 
      ng-init="selected = attributes[0]" 
      ng-model="selected"
      ng-options="key as value.Name for (key, value) in attributes">
</select>

答案 1 :(得分:0)

解决方案是设置以下默认值:

$scope.selected = '1';

所以我只需要设置id(键)。在选择框中显示&#34; Attribute1&#34;现在和相关的id绑定。