0

<select> ngOptionsモデルから初期値を設定するために厳密でない比較を実行する方法はありますか? たとえば、モデルが整数でオプション キー プロパティが文字列値の場合、<select>残念ながら初期値は設定されません。

HTML:

<div ng-app="app">
  <div ng-controller="Controller">
    <select data-ng-model="model" data-ng-options="option.id as option.text for option in options"></select>
  </div>
</div>

JS:

var app = angular.module('app', []);

app.controller('Controller', function ($scope) {
    $scope.model = '2'; // This works as an integer (2) but not as a string ('2')
    $scope.options = [
      {id: 1, text: '11111'},
      {id: 2, text: '22222'}, // I want this option to be selected
      {id: 3, text: '33333'}
    ];
});
4

1 に答える 1

0

私が間違っていなければ、次のような「track by」キーワードを ng-options に追加する必要があります。

    <select data-ng-model="model" data-ng-options="option.id as option.text for option in options track by option.id"></select>
于 2018-04-22T13:27:55.743 に答える