Ng-options不能用于对象

ng-options dont work with an object

本文关键字:对象 用于 不能 Ng-options      更新时间:2023-09-26

我确信对此有一个很好的解释,但我似乎无法使ng-options与我的模型对象一起工作。基本上,我想让我的选择显示的国家列表。选项值是国家代码,标签是国家名称:

<div ng-app="demoApp">
    <div ng-controller="UserInfoCtrl">
        <h1>User Info</h1>
        <label>Email</label>
        <input type="text" ng-model="user.email" />
        <br />
        <label>Country</label>
        <select ng-model="user.country" ng-options="code as name (code, name) in countriesByCode">
        </select>
        <pre>{{ user | json }}</pre>
    </div>
</div>
JavaScript

var demoApp = angular.module('demoApp', []);
demoApp.controller("UserInfoCtrl", function($scope) {
    $scope.user = { };
    $scope.countriesByCode = {
        'AF' : 'Afghanistan',
        'CA' : 'Canada',
        'RU' : 'Russia'
    };
});

这是jsfield

您的语句中缺少一个" for "

code as name for (code, name) in countriesByCode

校正后的小提琴:http://jsfiddle.net/8XJX4/2/

对不起,这是我表达中的一个愚蠢的错误。而不是

code as name (code, name) in belongesbycode

应该是

code作为(code, name)在countryesbycode中的名称