У меня есть раскрывающийся список выбора, который настраивается, и параметры, созданные с помощью 'data-ng-options'
Это HTML:
<select class="form-control" id="playListOpt" ng-model="playListItem.selectedObject" ng-change="changePlaylist(playListItem.selectedObject)" ng-required="true"
data-ng-options="playListItem as playListItem.name for playListItem in playListDataForActivity">
<option value="" translate="PLAYLIST_CREATE_NEW"></option>
</select>
Это приводит к следующему выводу вскомпилированный html:
<select class="form-control ng-pristine ng-valid ng-valid-required ng-touched" id="playListOpt" ng-model="playListItem.selectedObject" ng-change="changePlaylist(playListItem.selectedObject)" ng-required="true" data-ng-options="playListItem as playListItem.name for playListItem in playListDataForActivity" required="required" aria-required="false" aria-invalid="false" style=""><option value="" translate="PLAYLIST_CREATE_NEW" class="" selected="selected">Create New Playlist</option><option label="Dev Playlist 1" value="object:2670">Dev Playlist 1</option><option label="Dev Playlist 2 (Favorite)" value="object:2671">Dev Playlist 2 (Favorite)</option></select>
В настоящее время опция «Создать новый плейлист» всегда выбрана.Тем не менее, я хотел бы установить выбранную опцию на «isDefault», доступную мне через playListItem.Я чувствую, что моя проблема не в понимании того, как установить selectedObject, так как значение параметра, похоже, генерируется кодом?
Это код в контроллере, где, если для элемента установлено значение 'isDefault'что я устанавливаю выбранный объект.Это не работает.
if (response && response.status == 200) {
$scope.playListDataForActivity = response.data.playlists;
$scope.totalOwnedPlaylistCount = response.data.totalOwnedPlaylistCount;
for (var i = 0; $scope.playListDataForActivity[i]; i++) {
if ($scope.playListDataForActivity[i].isDefault)
$scope.playListItem.selectedObject = $scope.playListDataForActivity[i];
}
}
Любые советы о том, что мне нужно сделать, чтобы это исправить?
Обновлен код выше и новый вопрос ниже
После изменения, предложенного @Lex ниже, и «Создать новый список воспроизведения», и параметр IsDefault помечаются как выбранные в HTML
<select class="form-control ng-pristine ng-valid ng-valid-required ng-touched" id="playListOpt" ng-model="playListItem.selectedObject" ng-change="changePlaylist(playListItem.selectedObject)" ng-required="true" data-ng-options="playListItem as playListItem.name for playListItem in playListDataForActivity" required="required" aria-required="false" aria-invalid="false" style=""><option value="" translate="PLAYLIST_CREATE_NEW" class="" *selected="selected"*>Create New Playlist</option><option label="Dev Playlist 1" value="object:2996">Dev Playlist 1</option><option label="Dev Playlist 2 (Favorite)" value="object:2995" *selected="selected"*>Dev Playlist 2 (Favorite)</option><option label="Dev Playlist 3" value="object:2997">Dev Playlist 3</option></select>
Есть ли что-то, что мне нужно очистить, или есть что-тов 'выберите', который должен быть добавлен?