角度选择多次不刷新模型更改

时间:2015-10-29 19:39:30

标签: javascript angularjs drop-down-menu

我对angular和html select有以下问题 - 输入: 当用户加载页面时,我的select为空,直到数据被加载并从相应的服务返回。 在这种情况下,select已正确填充。

但是,用户应该能够通过单击按钮来过滤模型。

当我按下按钮时,会向REST-API发送新请求,并且响应包含select的新模型。

不幸的是,即使我更改了模型<{p>,select也无法正确更新

以下是一些代码来说明我的问题:

     // This happens in my controller
     EventService.getAvailableRooms(requestObject).then(function successCallback(response){
        // sanatizeRoomTypes is used to generate user-friendly names instead of [1, 2,..]
        vm.rooms = DataSanatizer.sanatizeRoomTypes(response.data);

    }, function errorCallback(response){


        console.log(response)
    });

vm.rooms是我的select

的模型
<select id="roomSelect" ng-model="eventCtrl.selectedRooms"
                                ng-options="room.name group by room.type for room in eventCtrl.rooms track by room.id" multiple required>
</select>

在某些情况下,select会复制它的模型或丢失条目。似乎存在某种数据绑定问题。

谢谢,

1 个答案:

答案 0 :(得分:0)

尝试在$ scope.apply中包装模型更改:

$scope.$apply(function() {
    $scope.data.myVar = "Another value";
});

在此阅读更多信息: http://tutorials.jenkov.com/angularjs/watch-digest-apply.html

您还可以在更改$ scope变量时使用$ scope。$ watch在视图中更新它们。