Установка Angular выберите ng-init для первого значения в массиве
У меня есть простой элемент select, который я пытаюсь применить к существующему значению для отправки формы, и я попробовал как установить требуемый атрибут, так и использовать ng-init, чтобы убедиться, что выбрано значение, и оба сбой.
Я использую ng-options
для создания списка значений из массива объектов, у которых есть свойство ref. Затем я хотел бы использовать ng-init
, чтобы установить отображаемое значение в первый объект Object.ref в массиве.
<select name="refmarker" class="input-block-level form-width-adjust" ng-model="model.refmarker" ng-options="rm.ref for rm in refmarkers" ng-disabled="editable" ng-init="model.refmarker='refmarkers[0].ref'" required></select>
Я пробовал следующее без везения
ng-init="model.refmarker='refmarkers[0]'"
ng-init="model.refmarker='refmarkers[0].ref'"
ng-init="model.refmarker='rm.ref'"
Также атрибут required
не работает? Является ли элемент angular select buggy или я делаю что-то неправильно?
Ответы
Ответ 1
требуется только работать в стороне элемента формы.
Что вы хотите - ng-init = "model.refmarker = refmarkers [0]"
<!doctype html>
<html lang="en" data-ng-app="app">
<head>
<meta charset="utf-8">
<title>Test</title>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.6/angular.js"></script>
<script type="text/javascript">
angular.module('app',[])
.controller('Main',function($scope)
{
$scope.model = {};
$scope.refmarkers = [{ref:'abc'},{ref:'def'},{ref:'ghi'}];
});
</script>
</head>
<body ng-controller="Main">
{{'Angular'}}
<select ng-model="model.refmarker" ng-options="rm.ref for rm in refmarkers" ng-init="model.refmarker=refmarkers[0]"></select>
{{model.refmarker}}
</body>
</html>