我编写了如下代码
<select ng-model="runnames"
ng-options="runs.runname for runs in season.runs"
ng-change="Onchangefunc(runnames)">
这很好用。但问题是,我想改变另一个函数的选定值。我将值设置为
$scope.runnames = 'A';
以下是JSON的样子
[
{"runid": "1","runame": "A"},
{"runid": "2","runame": "B"},
{"runid": "3","runame": "C"}
]
但是选择值不会改变。我做错了什么?或任何其他功能?
答案 0 :(得分:1)
ng-options适用于对象。
我们使用键,跟踪用于设置或选择选项。
我为自己的purpsose修改了HTML,如下所示。
<select ng-model="runnames"
ng-options="runs as runs.runame for runs in season track by runs.runid"
ng-change="Onchangefunc(runnames)">{{runs}}
</select>
AND JS
controller('testCtrl',function($scope){
$scope.season = [
{"runid": "1","runame": "A"},
{"runid": "2","runame": "B"},
{"runid": "3","runame": "C"}
]
$scope.runnames = {"runid": "3"}
})
使用 ng-options 中的曲目,并在外部函数中设置该值。
以下是plunker
答案 1 :(得分:0)
查看本页顶部https://docs.angularjs.org/api/ng/directive/ngOptions附近提供的示例,您可能需要确保$ scope.runnames变量包含&#39; name&#39;的定义。即。
$scope.runnames = { name: 'abc' };