Angularjs - 选择/选项 - 应用过滤器后设置默认选择

时间:2013-10-24 04:55:54

标签: html angularjs

请查看this plunkr

我有几个基于一些简单条件过滤的选择列表。有一个(植物)列表,通过单击“添加”按钮动态构建。添加每一行时,我希望选择自动选择列表中的第一项。请记住,根据表单顶部的选择列表(SalesOrg),有过滤器和项目会发生变化。

最好,我想在控制器中不使用DOM的情况下这样做。

更新:看看这个simpler plunk。选择“德克萨斯”作为州。相应地过滤了城市下降。初始选择不起作用,因为原始下拉变量(DropDownData.Cities)不再是选择的来源 - 它已被过滤。

1 个答案:

答案 0 :(得分:1)

只需使用ng-init

<select class="form-control"  id="selSalesOrg" ng-model="SelData.SalesOrg"
    data-ng-options="salesOrg.id as salesOrg.Description for salesOrg in DropDownData.SalesOrgs"
    ng-init="SelData.SalesOrg = DropDownData.SalesOrgs[0].id">
    </select>

固定的 PLunker

第二种方法是将ng-init指令添加到控制器,例如:

$scope.SelData.SalesOrg = DropDownData.SalesOrgs[0].id; 

注释**

由于你实际上使用过滤器,我们不能在过滤后的第一个元素,而是在列表中的第一个元素