查找具有特定ID的项目,然后在下拉列表中选择

时间:2016-06-20 08:13:20

标签: html angularjs select default

嗨,我有跟随对象:

        myList = {
            Items: [
                {
                    ID: -1,
                    Name: "Default item"
                },
                {
                    ID: 0,
                    Name: "Some item"
                },
                {
                    ID: 12,
                    Name: "Item 1"
                }
            ]
        };

我在我的选择中使用ng-options循环此对象,如下所示:

<select ng-options="option as option.Name for option in myList.Items"></select>

它会在我的列表中显示我的项目,但是下拉列表第一次也是一个空项目,这是默认值。单击其中一个项目后,空的删除和我选择的项目在列表中。如何搜索ID = -1的项目并在列表中选择此项作为默认项而不是空项?我试着这样做了:

let myDefault = myList.Items.find((item:any) => item.ID == -1);

找到我的项目,但如何在列表中将其设置为默认值?

谢谢和欢呼。

2 个答案:

答案 0 :(得分:1)

将select的模型初始化为数组中的第一项:

<select ng-init="selectedItem = myList.Items[0]" 
        ng-model="selectedItem" 
        ng-options="option as option.Name for option in myList.Items">
</select>

答案 1 :(得分:1)

首先将ng-model添加到select代码

 <select ng-model="select" 
         ng-options="option as option.Name for option in myList.Items">
 </select>

并在控制器中

 $scope.select = $scope.myList.Items.find((item:any) => item.ID == -1);