Использование Angular 1.2.29 при построении <select>
с ng-options
появляется на поверхности, чтобы работать как ожидалось, когда я выбираю опцию, когда модель обновляется, и визуально <select>
указывает, что выбран выбранный вариант.Почему Angular не обновляет DOM, добавляя атрибут 'selected' к тегу <option> в ng-вариантах, когда он правильно обновляет модель?
Однако при использовании инструментов разработчика для просмотра разметки я вижу, что теги параметров не обновляются, в частности, атрибут selected
не удаляется из ранее выбранного параметра и не добавляется к вновь выбранному параметру.
<div data-ng-controller="MainController as main">
<pre> {{ main.test.item }} </pre>
<select
data-ng-model="main.test.item"
data-ng-options="item.label for item in main.test.items"
required="required">
<option value="" label="What do you want?"></option>
</select>
</div>
Установив модель this.test.item
в контроллере selected="selected"
добавляется ко второму варианту (с меткой «B»), однако последующие изменения (сделанные с помощью выбора) не обновлять размеченного соответствующим образом.
angular
.module('myApp')
.controller('MainController', MainController);
function MainController() {
this.test = {};
this.test.items = [
{ label : 'A' },
{ label : 'B' },
{ label : 'C' }
];
// Pre-select the second item.
this.test.item = this.test.items[1];
}
Замечательно, что модель поддерживается в актуальном состоянии, но почему наценка остается неизменной?
Что можно сделать, чтобы исправить это, чтобы он обновлялся в соответствии с моделью?
https://jsfiddle.net/paulhhowells/4hmwhbe8/
Можете ли вы включить небольшой jsfiddle? – devqon
Возможно, вас заинтересуют ответы на http://stackoverflow.com/questions/29837387/angularjs-select-dom-markup –
@ AdamAxtmann приветствия, я трался через stackoverflow, но не видел этого – paulhhowells