Angularjs 使用简单数组时,第一次在ng选项中选择的值不起作用 {{selectedValue}}
剧本Angularjs 使用简单数组时,第一次在ng选项中选择的值不起作用 {{selectedValue}},angularjs,ng-options,Angularjs,Ng Options,剧本 <script type='text/javascript' src='//cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.1/angular.js'></script> <div data-ng-app="app" data-ng-controller="exCtrl"> <select data-ng-model="selectedValue" ng-options="key
<script type='text/javascript' src='//cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.1/angular.js'></script>
<div data-ng-app="app" data-ng-controller="exCtrl">
<select data-ng-model="selectedValue"
ng-options="key as value for (key , value) in dataset">
<option></option>
</select>
{{selectedValue}}
</div>
var-app=angular.module(“app”,[]);
应用控制器(“exCtrl”,功能($范围){
$scope.dataset={1:“一”,2:“二”,3:“三”};
$scope.selectedValue=1;
});
最初在选择元素中未选择选定值,但选定值在那里,但在从选择元素中选择一个值后,它工作正常。为什么?我如何克服这一点
注意:我无法更改数组结构。在您的代码中使用文字对象,它的工作方式类似于键/值数组,但当您声明
{1:“一”时。
实际上键不是整数1,而是字符串“1”
如果要使用对象作为源初始化ng option指令,则必须使用字符串
<script>
var app = angular.module("app",[]);
app.controller("exCtrl",function($scope) {
$scope.dataset = {1:"one", 2:"two", 3:"three"};
$scope.selectedValue = 1;
});
</script>
键是字符串,不是整数:
$scope.selectedValue='1';
。谢谢,它工作正常:)
$scope.selectedValue = "1";