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]"