Angular ng-options设置值与object中的相同

时间:2014-04-17 18:23:11

标签: javascript angularjs ng-options

我正在尝试使value属性等于对象中的值。

例如:

对象:

$scope.tagSelect = [
        { Name: 'Must have', Value: 1 },
        { Name: 'Must not have', Value: 2 }];

Angular HTML:

<select ng-options="select.Value as select.Name for select in tagSelect" ng-model="tag.MatchLogic"></select>

输出:

  <select ng-options="select.Value as select.Name for select in tagSelect" ng-model="tag.MatchLogic" class="ng-pristine ng-valid">
        <option value="0" selected="selected">Must have</option>
        <option value="1">Must not have</option>
  </select>

这不完全是我想要的。我想要的是选项值等于我的对象中的值。

更像下面的内容:

<option value="1" selected="selected">Must have</option>
<option value="2">Must not have</option>

1 个答案:

答案 0 :(得分:0)

我认为您的方法是正确的,模型值正确更新但HTML value属性不是相同的值。奇怪的行为,但它看起来像是想要的。

ng-options="select.Value as select.Name for select in tagSelect"

http://jsfiddle.net/nicolasmoise/Y8C5A/

注意如何使用正确的值更新ng模型。