Angularjs ng-selected填充

时间:2015-02-03 14:23:23

标签: angularjs

我正在尝试以角度js填充当前选定的项目。

当前所选项目的ID为event.email.chases[0].id

我正在尝试将其与从case.activeChases

填充的选择框进行匹配

这就是我想要的,它会在选择框发生变化时更新。

<select
    class="form-control"
    name="chase"
    id="chase"
    ng-model="customer.chase"
    ng-change="addEmailToChase(customer.chase.id, event.email.id)"
    ng-options="cor as cor.emails[0].subject for cor in case.activeChases">
    <option value="">None</option>
</select>

我需要使用activeChases找到activeChases[x].id = event.email.chases[0].id中的追踪,因此在页面加载时会选择正确的值。 我可以在ng-selected属性中完成所有操作吗?

2 个答案:

答案 0 :(得分:0)

您的模型和ng-options有问题,如果您想要自动选择&#34;对象应该是相同的。

没有jsfiddle很难重现你的情况,但我尝试了类似的东西

&#13;
&#13;
var app = angular.module('App', []);

app.controller('Ctrl', function($scope) {
  $scope.case = {
    activeChases: [{
      emails: [{
        subject: 'toto'
      }]
    }, {
      emails: [{
        subject: 'tata'
      }]
    }]
  };

  // set "default value"
  $scope.customer = {
    chase: $scope.case.activeChases[1]
  };
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>

<section ng-app="App" ng-controller="Ctrl">
  <select class="form-control" name="chase" id="chase" ng-model="customer.chase" ng-change="addEmailToChase(customer.chase.id, event.email.id)" ng-options="cor as cor.emails[0].subject for cor in case.activeChases">
    <option value="">None</option>
  </select>
</section>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

所以这是我的回答:

                            <select
                                    class="form-control"
                                    name="chase"
                                    id="chase"
                                    ng-model="event.email.chases[0].id"
                                    ng-change="addEmailToChase(event.email.chases[0].id, event.email.id)"
                                    ng-options="cor.id[0] as cor.emails[0].subject for cor in case.activeChases">
                            </select>

我希望select中的默认值为event.email.chases[0].id,因此我只需将ng-model设置为该值,并将第一个选项更改为cor.id[0]以在索引中使用id。

我选择ng-model的随机名称customer.chase,这是没有意义的。 event表示加载了ajax的表单元素,因此我可以安全地在我的范围内执行此操作。

另外值得注意的是,由于应用程序中的设计不正确,cor.id[0]中的ID实际上是一个一号数组。