JSFiddle - React, Tailwind, and code Playground
HTML
<head>
<script type='text/javascript' src='http://code.angularjs.org/1.1.2/angular.min.js'></script>
</head>
<body ng:App>
<div ng:controller='Ctrl'>
<!-- what I'd like to do -->
<select>
<option ng:repeat='key in keys' value='{{key}}'> {{lookup[key].firstName}} {{lookup[key].lastName}} </option>
</select>
<br/>
<!-- Angular's work-around for IE not liking the above -->
<select ng-model='key' ng:options='k for k in keys'></select>
<br/>
<!-- Adding a label as an expression -->
<select ng-model='key' ng:options='k as lookup[k].firstName + " " + lookup[k].lastName for k in keys'></select>
</div>
</body>
JavaScript
function Ctrl($scope) {
$scope.keys = [ "foo", "bar", "baz" ];
$scope.lookup = {
"foo": { firstName: "John", lastName: "Doe" },
"bar": { firstName: "John", lastName: "Smith" },
"baz": { firstName: "Max", lastName: "Headroom" }
};
}