Angularjs 更改一个下拉列表的值就是更改另一个下拉列表的值

Angularjs 更改一个下拉列表的值就是更改另一个下拉列表的值,angularjs,Angularjs,当我在ng change上更改一个下拉列表的值时,出现问题。即使两个下拉列表ID不同,它也会更改其他下拉列表值。 有人知道为什么会这样吗 下面是我的代码: <select class="form-control" id="Billable{{$index}}" ng-init="invoice.source_item=''" ng-model="invoice.source_item" ng-change="BillableItemDetails(invoice.source_item,

当我在
ng change
上更改一个下拉列表的值时,出现问题。即使两个下拉列表ID不同,它也会更改其他下拉列表值。

有人知道为什么会这样吗

下面是我的代码:

<select class="form-control" id="Billable{{$index}}" ng-init="invoice.source_item=''" ng-model="invoice.source_item" ng-change="BillableItemDetails(invoice.source_item,$index)">
    <option class="ng-binding" value="">Select Billable Item...</option>
    <option class="ng-binding" ng-repeat="BillableItem in BilableItemsList" value="{{BillableItem.id}}">{{BillableItem.name}}</option>
</select>

选择可计费项目。。。
{{BillableItem.name}

ng model=“invoice.source\u item”
的值更改为每个下拉列表的唯一范围变量。

使用不同的
ng model
变量和不同的下拉列表

这是

HTML

<select ng-model="dd1_Value" ng-change="changedd(ddValue.key)">
  <option ng-repeat="d in dd track by d.id">{{d.name}}</option>
</select>

<p>DropDown 1 : {{dd1_Value}}</p>


<select ng-model="dd2_Value">
  <option ng-repeat="d in dd track by d.id">{{d.name}}</option>
</select> 

<p>DropDown 2 : {{dd2_Value}}</p>

是的,这是因为您的所有下拉列表都有相同的
ng型号
,所以当您更改任何下拉列表的值时,它会通过“ng型号”-双向绑定反映到所有下拉列表中。感谢@gauravbhavsar的回复,有什么解决方案吗?是的,使用虚拟数据创建plunk或提供有问题的虚拟数据,这样我就可以为您创建plunkr。我们可以怎么做。任何演示?只需将ng model=“xxxxx”中的xxxxx更改为唯一的变量名。
app.controller('MainCtrl', function($scope) {

$scope.dd = [
    {id:1,name:'a'},
    {id:2,name:'b'},
    {id:3,name:'c'},
    {id:4,name:'d'},
    {id:5,name:'e'},
    {id:6,name:'f'}
]

});