Angularjs 角度-选择和N选项-为添加到模型的值定义关键点

Angularjs 角度-选择和N选项-为添加到模型的值定义关键点,angularjs,html-select,angular-ngmodel,ng-options,Angularjs,Html Select,Angular Ngmodel,Ng Options,我有以下资料: <select class="input-lg form-control" ng-model="selections[$index]" name="potsel" ng-options="selection.sel._id as selection.sel.name for selection in pot.selections" required ng-disabled="clicked"> 理想情况下,我希望它看起来像这样: $scope.selections

我有以下资料:

<select class="input-lg form-control" ng-model="selections[$index]" name="potsel" ng-options="selection.sel._id as selection.sel.name for selection in pot.selections" required ng-disabled="clicked">
理想情况下,我希望它看起来像这样:

$scope.selections = [{"dropdown1":"id1"},{"dropdown2":"id2"},{"dropdown3":"id3"},{"dropdown4":"id4"}]
请注意,可以使用“pot.#u id”在html中检索“dropdown#”

我已经看了一段时间了,但我看不到ngOptions中有任何地方可以定义这一点。需要帮忙吗


谢谢。

虽然您可以直接在html中执行此操作,但您肯定可以在js中执行此操作

      ng-change="selectionObj[$index] = {} ; selectionObj[$index][pot._id] = selections[$index]"
或者您可以创建一个函数,该函数将执行上述操作 ng change=addObject($index,pot.\u id,选项[$index])

编辑

抱歉,将$index替换为index

         var obj = {}; 
         obj[key] = value; 
         $scope.selectionObj[index] = obj;
         console.log(key, value);

很抱歉迟了答复。当我尝试此操作时,我看到一个持续错误,$index未定义。忽略上面的注释,我将
$scope.selectionObj[$index]
替换为
$scope.selectionObj[index]
。现在的问题是,正在添加对象,但它使用的是“键”一词,而不是值。。。e、 g.
$scope.selectionObj=[{key:“id1”}]
。是的,这似乎是函数中的类型问题,您的编辑修复了它。谢谢看起来这实际上是不必要的,因为它在模式中引起了很多问题(动态键,mongoose之类的),但是您的原始答案符合新的要求,我使用:
$scope.selectionObj[$index]={“id1”:value1,“id2”:value2}
     $scope.addObject = function(index, key, value) {
         $scope.selectionObj[$index] = { key : value   };   
     }
         var obj = {}; 
         obj[key] = value; 
         $scope.selectionObj[index] = obj;
         console.log(key, value);