Angular: Empty Fiddle
http://angularjs.org/
HTML
<script src="http://code.angularjs.org/angular-1.0.1.js"></script>
<div ng-controller="MyCtrl">
<select ng-options="value as value.Title for value in doesNotBind" ng-model="doesNotBindModel">
<option value> </option>
</select>
<select ng-options="value as value.Title for value in doesBind" ng-model="doesBindModel">
<option value> </option>
</select>
<br />Value of doesNotBind: {{doesNotBindModel}}
<br />Value of doesBind: {{doesBindModel}}
<br /> <input type="button" value="Change doesNotBindModel" ng-click="doesNotBindModel = doesNotBind[3]" />
<br />
<select ng-options="value for value in stringBinding" ng-model="stringBindingModel">
<option value> </option>
</select>
</div>
JavaScript
angular.module('myApp',[]);
function MyCtrl($scope) {
$scope.doesNotBind = [
{ID: 12, Title: "12 - Does not bind"},
{ID: 14, Title: "14 - Does not bind"},
{ID: 51, Title: "51 - Does not bind"},
{ID: 57, Title: "57 - Does not bind"},
{ID: 85, Title: "85 - Does not bind"},
{ID: 99, Title: "99 - Does not bind"}
];
$scope.doesNotBindModel = {ID: 57, Title: "57 - Does not bind"};
$scope.doesBind = [
{ID: 12, Title: "12 - Does bind"},
{ID: 14, Title: "14 - Does bind"},
{ID: 51, Title: "51 - Does bind"},
{ID: 57, Title: "57 - Does bind"},
{ID: 85, Title: "85 - Does bind"},
{ID: 99, Title: "99 - Does bind"}
];
$scope.doesBindModel = $scope.doesBind[3];
$scope.stringBinding = ["Chips", "Bacon", "Burger", "Eggs"];
$scope.stringBindingModel = "Bacon";
}