0

value 属性を、オブジェクトでどのように見えるかの値と等しくしようとしています。

例えば:

物体:

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

角度 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>
4

1 に答える 1

0

モデル値は正しく更新されますが、HTMLvalue属性は同じ値ではありません。奇妙な振る舞いですが、それは望んでいるように見えます。

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

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

ng-model が正しい値でどのように更新されるかに注目してください。

于 2014-04-17T18:48:59.857 に答える