2015-11-06 95 views
0

我有动态添加的行功能,并且每行都有两个下拉列表。第二个下拉值从JSON填充,并且这些值用第一个下拉列表映射。如何基于anularjs中的第一个下拉选择框将值分配到第二个下拉列表中

我的需求是第一个下拉列表的onchange,我需要为同一行中的第二个下拉列表分配值。在这里,我面临一个问题,即一旦我在第一个下拉列表中更改了值,那么所有行中的所有下拉列表值都会发生变化。

此外,我在这里添加了第一行下拉列表的Html代码。

<div class="firstdropdown"> 
    <select ng-change="getComponents"> 
     <option ng-repeat="kggrpItem in DesignGroupData track by $index" value={{kggrpItem}} ">{{kggrpItem}}</option> 
    </select> 
</div> 
<div class="seconddrodown "> 
    <select> 
      <option ng-repeat="kggrpCmp in KgGroupCmpData" value={{kggrpCmp}}>{{kggrpCmp}}</option>    
    </select> 
</div> 

对于实例控制器代码....

$scope.getComponents = function(){ 
    for(i=0;i<jsonstring.length;i++){ 
     $scope.dropdownvaluesArr = jsonvalues 
    } 
    $scope.KgGroupCmpData = dropdownvaluesArr 
} 

请帮我解决这个问题。

+0

我想ü有它包含两个下拉一行。当第一个drpdwn值chng更新值在同一行的第二个dropdwn中更新我是否正确r我不在路径中? – SakthiSureshAnand

+0

你可以创建一个工作plunker? – MaheshKumar

+0

是的,你是对的sakthi,那是我的要求 – Dharma

回答

0

而不是使用ng-change,尝试ne-model它会自动更改第二个下拉值。

<div id="fistDropdown"> 
    <span>fistDropdown</span> 
    <select ng-model="selected"> 
    <option ng-repeat="option in selectlist track by $index" value={{option.key}}>{{option.value}} 
    </option> 
    </select> 
</div> 

<div id="secondDropdown"> 
<span>SecondDropdown</span> 
    <select ng-model="selected"> 
    <option ng-repeat="option in selectlist" value={{option.key}}>{{option.value}} 
    </option> 
    </select> 
</div> 

,并通过选择价值NG-模型像下面

$scope.selected = '3'; 

我连着提琴手网址也请检查一下 clone select box

相关问题