Javascript angularJs中的动态ng模型

Javascript angularJs中的动态ng模型,javascript,html,angularjs,Javascript,Html,Angularjs,我有一个对象数组 我有一个下拉框,里面有这些名字,还有一个文本框,用来显示所选对象内部的值 我已将输入框设置为 <input type="text" class="form-control" ng-model="o.boxes.box1[0]"> 是否有办法将“box1[0]”设置为所选下拉列表值?下拉框为selectedNumber。我尝试了ng model=“o.boxes.{{selectedNumber}}[0]”,但这不起作用 ng model=“o.boxes.

我有一个对象数组

我有一个下拉框,里面有这些名字,还有一个文本框,用来显示所选对象内部的值

我已将输入框设置为

 <input type="text" class="form-control" ng-model="o.boxes.box1[0]">

是否有办法将“box1[0]”设置为所选下拉列表值?下拉框为selectedNumber。我尝试了ng model=“o.boxes.{{selectedNumber}}[0]”,但这不起作用


ng model=“o.boxes.{{selectedNumber}}[0]”

只需对代码进行少量重构,您就可以随心所欲了。 最好的方法是:使用当前选择的下拉列表更新输入ng model参考

在控制器中:

$scope.boxes = {
    box1: [],
    box2: [],
    box3: []
}
$scope.selectedBoxModel = null;

$scope.onDropdownSelection = function (selectedBox) {
    $scope.selectedBoxModel = selectedBox;
}
在您输入的模板中,您将使用所选框引用ng模型

尝试按如下所示给出运行时表达式求值


我认为您必须将逻辑分为两部分:1)必须下拉成为任意一个对象、任意一个字符串的数组,并将ng模型作为字符串绑定到所选键(box1、box2、ecc)的数组。2) 将所选元素绑定到输入,如:
ng model=“o.boxes[selectedBox][0]”
。然而,将数组值引用到输入的方法非常奇怪,通常将对象属性绑定到视图,而不是数组元素。如果我是你的话,我会先改变主导模式。ng model=“o.boxes[selectedNumber][0]”有效,但即使我使用ng repeat中的o对象,文本框仍会复制每一行?
 ng-model="o.boxes[{{selectedNumber}}][0]"