我有一個人物對象列表,我想綁定到一個select元素。angularjs ng-model和ng-select奇怪行爲
控制器實現:
// Person controller
function PersonCtrl($scope) {
$scope.persons = [{id: 1, name: 'alex'}, {id: 2, name: 'jhon'}];
$scope.selectedPerson = {id: 2, name: 'jhon'};
}
HTML標記:
<select ng-model="selectedPerson" ng-options="p.name for p in persons"></select>
的問題是結合似乎只能從HTML的範圍,而不是周圍的其他方式工作。如果我從下拉列表中選擇一個項目,它將正確更新$ scope.selectedPerson。但是,如果我最初將$ scope.selectedPerson變量的值設置爲人員列表中的一個對象,則該值不會反映在選擇控件上。
我也有小提琴,準確顯示的問題是什麼:http://jsfiddle.net/nE3gt/
預先感謝您!
嗨,感謝您的回答!問題是,我正在服務器上構建一個複雜的模型,這是我設置選定對象的位置,並填充了可能的選項。這是唯一的方法嗎? –
你的意思是從服務器返回的數據類似'{persons:[{id:1},{id:2},{id:3}],selectedPerson:{id:2}}'? – brianj
是的,就是這樣。可以在這裏使用像ng-init這樣的東西嗎? –