javascript - 在 Angular js中的两个选择下拉菜单之间切换

标签 javascript jquery angularjs select drop-down-menu

我有两个带有 JSON 数据的下拉列表

<select class="form control" ng-model="fruitsName" ng-options="r.id as r.name for r in fruits">
<option value="">--Select---</option></select>

$scope.fruits = [{'id': 'AL', 'name': 'Apple'},{'id': 'FL', 'name': 'Orange'},{'id': 'CA', 'name': Mango'},{'id': 'DE', 'name': 'PineApple'}];

 <select class="form control" ng-model="sellerName" ng-options="r.id as r.name for r in seller">
<option value=""></option></select>

$scope.seller = [{'id': 'AL', 'name': 'John'},{'id': 'FL', 'name': 'Miller'},{'id': 'CA', 'name': 'Jack'},{'id': 'DE', 'name': 'Smith'}];

我的要求:如果我在第一个下拉列表中选择一个项目,那么第二个选择下拉列表应该自动填充其第一个项目,反之亦然。

任何帮助将非常感激。谢谢

最佳答案

编辑第一个ng-options如下

<select class="form control" ng-model="fruitsName" ng-options="r as r.name for r in fruits" ng-change="selectSecond()">
<option value="">--Select---</option>

Controller 内部

 $scope.selectSecond = function(obj) {
     var selected = $scope.fruitsName;
     var index = $scope.fruits.indexOf(selected);
     $scope.selectedFroutIndex = index;

     $scope.sellerName = $scope.seller[$scope.selectedFroutIndex].id;    
}

这是演示 Plunker

<小时/>

如果您对更改 ng-options 不感兴趣

 <select class="form control" ng-model="fruitsName" ng-options="r.id as r.name for r in fruits" ng-change="selectSecond()">
     <option value="">--Select---</option>
 </select>

那么你的 Controller 应该是这样的

$scope.selectSecond = function() {
    var selected = $scope.fruitsName;
    var index = -1;
    angular.forEach($scope.fruits , function(value, key) {
      if(value.id === selected) {
        index = key;
       return;
      }
    })
    $scope.selectedFroutIndex = index;
    $scope.sellerName = $scope.seller[$scope.selectedFroutIndex].id;
}

这是演示 Plunker

<小时/>

如果您需要反之亦然,请执行相同的操作

这是演示 Plunker

关于javascript - 在 Angular js中的两个选择下拉菜单之间切换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27441135/

相关文章:

javascript - Javascript/AJAX 时间是几点?

javascript - 保留 html.dropdownlist 中选定的值

javascript - 防止 WordPress javascript 冲突的好习惯?

javascript - 尝试使用 node.js 安装 jquery 时出现错误消息

javascript - 使用 Moment.js 在 JS 中格式化日期

javascript - 组合不同 Angular 程序

javascript - AppGyver Steroids 超音速 View

AngularJS POST 到服务器

用于生成下拉菜单/删除下拉菜单的 JavaScript 函数

javascript - ng-model AngularJs 中的函数调用