当我按下按钮(更改选择下拉列表的ng-options
)时,我试图设置默认的ng-model
值。我正确设置了ng-model
的值,并且模型显示它的值已更改,但是select并没有设置所选的ng-model
的值。
这是我的HTML,我尝试使用track by
,将其删除...
<select ng-model="selectMomentoEdit"
ng-options="x.nombre for x in momentsList track by x.idMomento"
name="select" id="selectMomentoEdit" class="form-control">
<option>{{x.nombre}}</option>
</select>
ng-model
的值始终是一个对象,因此从JS中我给出了它的值:
angular.forEach($scope.momentsList, function (value, key) {
if (value.idMomento == $scope.selectedControlObject.idMomento) {
// At this point $scope.selectMomentoEdit is undefined (It's ok)
console.log(typeof ($scope.selectMomentoEdit));
// At this point $scope.selectMomentoEdit is an object, the selected value, OK.
// BUT the select tag won't show my selected option
$scope.selectMomentoEdit = value;
console.log($scope.selectMomentoEdit.nombre);
}
});
因此,在foreach中,我更改了select的ng-model,但是默认情况下,select框设置了一个空选项,而忽略了在foreach中设置的值。
有任何线索吗?
更新:
我制作了一个punker,它起作用了,但是我不知道为什么我的脚本不起作用。我正在使用引导程序模式,但无论如何应该可以工作。