【问题标题】:How to remove the value in dropdown if the value is already selected in another dropdown如果已在另一个下拉列表中选择了该值,如何删除下拉列表中的值
【发布时间】:2019-06-20 11:15:47
【问题描述】:

我有多个使用 ng-repeat 的下拉列表。在下拉列表中,我通过 $scope 数组填充值。

举例

$scope.list = ["A","B","c"]

考虑在第一个下拉菜单中,如果我选择了 A,那么另一个下拉菜单不应该允许选择 A,如果我在下一个下拉菜单中选择了 B,并且我想更改第一个下拉菜单的值,那么它应该允许我只选择 A 和 C。

HTML:

<select>
   <option ng-value="val" ng-repeat="val in list">
     {{val}}
   </option>
</select>

提前致谢

【问题讨论】:

    标签: jquery angularjs


    【解决方案1】:

    例如,您可以添加第二个列表,名为cleanList。这将作为第二个下拉列表的数据源。看这个例子

    $scope.list = ["A","B","c"];
    $scope.cleanList = ["A","B","c"];
    $scope.onSelect = function(){
         $scope.cleanList=[];
       for(var i=0; i<$scope.list.length; i++){
         if($scope.list[i]!=$scope.otherVal)$scope.cleanList.push($scope.list[i]);
       }
    }
    

    还有你的 htmls

    <select>
       <option ng-value="otherVal" ng-repeat="val in list" ng-change='onSelect()'>
            {{otherVal}}
        </option>
    </select>
    
    <select>
       <option ng-value="val" ng-repeat="val in list">
            {{val}}
        </option>
    </select>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-01-11
      • 2015-12-30
      • 1970-01-01
      • 1970-01-01
      • 2020-03-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多