2016-02-23 5 views
0

Я борюсь со следующим фрагментом кода.Выбор опции по умолчанию

<body ng-controller="MainCtrl"> 
    <h1>Select something below</h1> 
    <select id="s1" ng-model="selectedItem" ng-options="item as item.name for item in items"></select> 
    <h3>The selected item:</h3> 
    <pre>{{selectedItem | json}}</pre> 
    <h3>The inner html of the select:</h3> 
    <pre id="options" class="prettify html"></pre> 
    </body> 

и в JS

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

app.controller('MainCtrl', function($scope) { 
    $scope.items = [ 
    { id: 1, name: 'foo' }, 
    { id: 2, name: 'bar' }, 
    { id: 3, name: 'blah' }]; 

    $scope.selectedItem = { id: 3, name: 'blah' }; 

}); 

У меня есть выбранный элемент по умолчанию. Но при выборе страницы он не отображается.

Я представил свой код в следующей ссылке

http://plnkr.co/edit/FlESsL?p=preview

В данном примере раскрывающийся должен по умолчанию выбрать пункт blah.

ТИА Mobin

ответ

1

Первое, что вам нужно сделать, это обновить angularjs версию, то вы можете просто следовать угловой select примеры.

В представленной ссылке они используют track by для отображения правильного объекта, я взял на себя смелость редактировать их пример plunker и добавил код Here it is!

, как вы можете видеть, единственное, что я добавил в код был track by item.id

+0

Хаа я не видел, что надвигается. Благодарю. Я попробовал «track by», но забыл проверить версию. –

+0

@MobinSkariya рад, что я помог! – klskl

0

Попробуйте это:

<select id="s1" ng-model="selectedItem" ng-options="item.id as item.name for item in items"></select> 

и:

$scope.selectedItem = 3; 
+0

Я хочу привязать 'selectedItem' к объекту –

+0

http://stackoverflow.com/questions/17921930/how-to-make-angular-ng-model-work-with-objects-in-select-elements – Mahmoud

+0

Извините, я не нашел ссылку полезной. Пожалуйста, поправьте меня, если я ошибаюсь. –

Смежные вопросы