0

选择

select(ng-model="elId", ng-change="load(elId)", ng-options="e._id as e.name for e in options")
    option(value="") - select a mashup -

控制器

以下工作,选择被填充。我正在使用广播,因为它来自套接字.. 不介意。

 //receive list
 $scope.$on('list:refresh', function(ev, data) {
     $scope.options = data
 })

以下仅适用于我之前未手动选择任何选项的情况。data.id是列表中的有效条目。

 //refresh list of mashups when a new one has been created
 $scope.$on('list:select', function (ev, data) {  
     $scope.elId = data.id
 })

如果我手动选择一个选项,然后list:select触发,$scope.elId则会更新但<select>不会突出显示该选项。

到底是怎么回事?

4

1 回答 1

1

解决了:

选择

select(ng-model="data.elId", ng-change="load()", ng-options="e._id as e.name for e in options")
    option(value="") - select a mashup -

控制器

 //receive list
 $scope.$on('list:refresh', function(ev, data) {
     $scope.options = data
 })

 $scope.load() {
    var elId = $scope.data.elId
    ....
 }

 //refresh list of mashups when a new one has been created
 $scope.$on('list:select', function (ev, data) {  
     $scope.data.elId = data.id
 })

我想问题是我试图从子控制器更改选定的值..现在我正在使用我加载到控制器中的服务数据$scope.data = Data..嗯?

于 2013-08-23T16:35:48.760 回答