在创建选择元素时使用angularjs,我可以使用
将第一个值设置为选中ng-init="item.state = stateArray[0]"
如何设置为键/值类型数组选择的第一个项目?
var States = { "AL": "Alabama", "AK": "Alaska", "AZ": "Arizona" }
html代码:
<select ng-model="item.state" ng-options="k as v for (k,v) in States" class="form-control"></select>
我也试过
ng-init="item.state = Object.keys(States)[0]"
答案 0 :(得分:1)
对于ng-options :
演示:http://jsfiddle.net/U3pVM/17821/
<强> HTML 强>:
<select ng-init="o = getFirst();" ng-model="o" ng-options="k as v for (k,v) in States" class="form-control"></select>
<强> JS:强>
$scope.States = {
"AL": "Alabama",
"AK": "Alaska",
"AZ": "Arizona"
};
$scope.getFirst = function () {
var v = Object.keys($scope.States)[0];
return v;
};
对于ng-repeat :
如果是ng-repeat,您可以使用$first
选择第一个选项。
ng-selected="$first?'selected':''"
答案 1 :(得分:0)
试试这个
ng-init="item.state= stateArray['AL']"
答案 2 :(得分:0)
试试这种方式。
在你的控制器中,
$scope.States = { "AL": "Alabama", "AK": "Alaska", "AZ": "Arizona" };
var arrProp = Object.getOwnPropertyNames($scope.States);
$scope.item = {};
$scope.item.state = arrProp[0];
和HTML一样,
<select ng-model="item.state" ng-options="k as v for (k,v) in States" class="form-control">
<option value="">Select </option>
</select>