如何在ng-model下获得ng-repeat下的选项的值

时间:2014-05-20 04:04:29

标签: javascript angularjs

让我的HTML如下:

<div ng-repeat="option in options">
<select  ng-model="myselect">  
     <option value="">{{option.attribute_text}}:</option>
     <option value="">{{option.attr_value}}-${{option.cost}}</option>
</select>
</div>

我想获取在ng-model中选择的选项的值。是否有任何方法可以在ng-model下的ng-repeat中获取值?

3 个答案:

答案 0 :(得分:0)

如果您想使用select,可以使用ng-select

如果您为ng-model指定ng-select,则会将select选项绑定到ng-model

您可以在此jsbin

中看到它

答案 1 :(得分:0)

查看:https://docs.angularjs.org/api/ng/directive/select

这是一个应该是正确的例子:

存储为控制器中哈希列表的选项:

   $scope.options = [ { "attribute_text" : "whatever", "data" : { "value" : 9, "cost" : 8 }, { ... } ]
   // Selected value
   $scope.optionSelected = {};

HTML:

<div>
   <select ng-select="option.attribute_text for option in options" ng-model="optionSelected">
</div>

答案 2 :(得分:0)

您有多个选择,并且您为所有选择提供相同的模型。 你不能给他们所有人myselect

给每个选项(你重复的那个)一个名字,并使用一个对象的键作为他们的模型。

<div ng-repeat="option in options">
  <select  ng-model="selections[option.name]">  
     <option value="">{{option.attribute_text}}:</option>
     <option value="">{{option.attr_value}}-${{option.cost}}</option>
  </select>
</div>

然后您可以像$scope.selections["some option name you gave earlier"]

那样访问它们