我有以下HTML
<md-select id="testSelect"
ng-model="objElements" ng-change="onElementChange()"
name="objElements" placeholder="Select Stuff">
<md-option id="testOption"
ng-repeat="ele in Elements"
ng-if="ele.Completed==false"
ng-value=ele.ID
ng-selected="$first">
{{ele.Name}}
</md-option>
Elements
使用$http.get
请求填充并正确显示 - 我可以选择一个元素并ng-change
正确触发。
如果我使用$http.post
添加新元素,然后使用Elements[]
将新对象推送到Elements.push($scope.NewElement)
,我是否可以将新对象设置为“已选中”元件?
我可以看到新元素已正确添加到Elements[]
但无法弄清楚如何设置ng-selected=NewElement
。
答案 0 :(得分:0)
是的,只需将objElements
设置为响应中的新元素即可。应该做的伎俩。
这里有一个很好的例子:https://material.angularjs.org/latest/api/directive/mdSelect(下面的代码)。
<div ng-controller="MyCtrl">
<md-select ng-model="selectedUser">
<md-option ng-value="user" ng-repeat="user in users">{{ user.name }}</md-option>
</md-select>
</div>
angular.controller('MyCtrl', function($scope) {
$scope.users = [
{ id: 1, name: 'Bob' },
{ id: 2, name: 'Alice' },
{ id: 3, name: 'Steve' }
];
$scope.selectedUser = { id: 1, name: 'Bob' };
});