我有一个非常基本的1
元素,只有3个选项。我允许用户通过.children
属性选择多个选项。
我有一个按钮,只有在选中时才会删除第二个值。虽然更改未应用于md-select
元素?
使用Javascript:
multiple
HTML:
md-select
要复制此问题,请选择" 1"和" 2"从下拉列表。然后单击"取消选择2"按钮以从ng-repeat中删除它,但不从下拉列表中的选定选项中删除。
如果更改范围变量,如何更新$scope.selectedNumbers = [];
$scope.numbers = [{
num: 1
}, {
num: 2
}, {
num: 3
}];
$scope.deselectTwo = function() {
if ($scope.selectedNumbers.indexOf(2) > -1) {
$scope.selectedNumbers.splice(1, 1);
}
};
选项?
答案 0 :(得分:2)
奇怪 - 这可能是md-select
的错误吗?我注意到,如果您将splice()
替换为作业(例如$scope.selectedNumbers = [1]
),那么它会按预期工作。
作为一种丑陋的解决方法,您可以添加一行来将selectedNumbers设置为自身的副本,这会导致md-select
更新。例如:$scope.selectedNumbers = $scope.selectedNumbers.slice();
热衷于听听其他人是否有更好的答案!