Angularjs Angular ui select multi-select:从控制器中选择某些项目时,下拉列表未得到更新
单击“选择黄色”按钮,我想将黄色添加到所选列表中。黄色已被选中,但下拉列表仍显示黄色。同样,我想在点击“取消选择黄色”按钮时取消选择黄色。我可以取消选择黄色,但黄色不会出现在下拉列表中。请帮我解决这个问题。 HTML:Angularjs Angular ui select multi-select:从控制器中选择某些项目时,下拉列表未得到更新,angularjs,multi-select,ui-select,angular-ui-select,Angularjs,Multi Select,Ui Select,Angular Ui Select,单击“选择黄色”按钮,我想将黄色添加到所选列表中。黄色已被选中,但下拉列表仍显示黄色。同样,我想在点击“取消选择黄色”按钮时取消选择黄色。我可以取消选择黄色,但黄色不会出现在下拉列表中。请帮我解决这个问题。 HTML: 这是plunker链接:这是一个inui select组件。您可以使用我的解决方案作为部分解决方案,直到此问题尚未解决 ui-select不过滤项目。它只是在ui-select-choices的repeat属性中计算表达式。如果您想从建议中排除已使用的值,您可以自己做 将额外过滤
这是plunker链接:这是一个in
ui select
组件。您可以使用我的解决方案作为部分解决方案,直到此问题尚未解决
ui-select
不过滤项目。它只是在ui-select-choices
的repeat
属性中计算表达式。如果您想从建议中排除已使用的值,您可以自己做
将额外过滤器添加到重复
<ui-select-choices repeat="color in availableColors | filter:omitSelectedColors | filter:$select.search">
谢谢,这在一定程度上帮助了我。选择黄色时,下拉列表将被更新,黄色不会被列出。但在取消选择黄色时,它不会再次添加回下拉列表。更新的pluncker链接:找到一段代码,负责在ui中选择源代码。我的解决方案是解决此问题的一个变通方法:。我想如果没有图书馆的改变,就无法完全修复它。谢谢你的帮助。希望这个问题能早点解决。你能推荐其他类似的多选插件吗?我找不到。我尝试过angular.js(1.3.15)和angular ui select(0.8.3)。现在一切都按预期进行。@SaiGiridhar,最新的ui选择是0.11.2。但很高兴听到降级到以前的版本对某些人来说是一个解决方案
$scope.availableColors = ['Red','Green','Blue','Yellow','Magenta','Maroon','Umbra','Turquoise'];
$scope.multipleDemo = {};
$scope.multipleDemo.colors = ['Blue','Red'];
$scope.selectYellowColor = function(){
if($scope.multipleDemo.colors.indexOf($scope.availableColors[3]) == -1){
$scope.multipleDemo.colors.push($scope.availableColors[3]);
}
};
$scope.deselectYellowColor = function(){
if($scope.multipleDemo.colors.indexOf($scope.availableColors[3]) != -1){
var index = $scope.multipleDemo.colors.indexOf($scope.availableColors[3]);
$scope.multipleDemo.colors.splice(index, 1);
}
};
<ui-select-choices repeat="color in availableColors | filter:omitSelectedColors | filter:$select.search">
$scope.omitSelectedColors = function(color) {
return $scope.multipleDemo.colors.indexOf(color) === -1;
}