使用Angularjs在选择下拉菜单中设置默认值

前端之家收集整理的这篇文章主要介绍了使用Angularjs在选择下拉菜单中设置默认值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个对象如下。我必须将其显示为下拉列表:
var list = [{id:4,name:"abc"},{id:600,name:"def"},{id:200,name:"xyz"}]

在我的控制器中,我有一个带有值的变量。该值决定了下拉列表中默认选择的数组中的上述三个项目中的哪一个:

$scope.object.setDefault = 600;

当我创建一个下拉表单项如下:

<select ng-model="object.setDefault" ng-options="r.name for r in list">

我面临两个问题:

>列表生成

<option value="0">abc</option>
<option value="1">def</option>
<option value="2">xyz</option>

代替

<option value="4">abc</option>
<option value="600">def</option>
<option value="200">xyz</option>

>没有选项被默认选择,即使我有ng-model =“object.setDefault”

问题1:

生成的HTML是正常的。显然,这是Angular的一个功能,能够使用任何类型的对象作为选择的值。 Angular执行HTML选项值与ng模型中的值之间的映射。
另请参阅Umur在这个问题上的评论How to set value property in angularjs ng-options?

问题二:

确保使用以下ng选项:

<select ng-model="object.item" ng-options="item.id as item.name for item in list" />

并将其放在您的控制器中以选择默认值:

object.item = 4

猜你在找的Angularjs相关文章