2016-03-30 10 views
0

オプション>をngRepeat内でngSelectedを使用して自動選択しようとしています。AngularJS - ngSelectedの値を比較できません

一つのオプションは、生成されたHTML内の属性との間<オプション>タグ「選択」が、<は、選択したオプションを持っていないようです>を選択しました。

$scope.selected = 2; 
$scope.isSelected = function(x) { 
    return (x == $scope.selected); 
}; 

$scope.myList = [{ 
    "id": "1", "name": "aaa" 
}, { 
    "id": "2", "name": "bbb" 
}, { 
    "id": "3", "name": "xxx" 
}]; 

...

<select ng-model="selected"> 
    <option ng-repeat="item in myList" value="{{item.id}}" 
    ng-selected="isSelected(item.id)"> 
     {{item.name}} [selected {{item.id == selected}}]</option> 
</select> 

私は、文字列にそれらを投げ、parseIntは値にしようとした、evalの比較...しかし、それは同じだしました:どうやら、noオプションが選択されていません。

https://jsfiddle.net/monguz/yxsqgz5n/

私は何をしないのですか? ありがとう

編集: ありがとうコメントと返信ありがとうございます。

フィドルは私の実際のコードを単純化したものです。 私は既に文字列として "選択"を試みましたが、そのタイプについて100%確信することはできません。

とにかく、なぜコードには選択されたオプションが表示されないのかわかりません。 docsによると、表現は "真実"なので、それは選択されたように見えるはずです。

https://docs.angularjs.org/api/ng/directive/ngSelected

+0

try $ scope.selected = "2" –

答えて

2

私はこのためにjsfiddleに変更し、働いていました。

$scope.selected = '2'; 
関連する問題