There is better way of doing this now. A new callback method has been added
In controller file add the following:
$scope.onSelect = function ($item, $model, $label) {
$scope.$item = $item;
$scope.$model = $model;
$scope.$label = $label;
};
In view add the following:
<input type="text"
ng-model="selected"
typeahead="state for state in states | filter:$viewValue"
typeahead-editable="false"
typeahead-on-select="onSelect($item, $model, $label)"/>
See the typeahead spec for more information (search for onSelect).
Check out if the following URLs helps
http://www.techguides.in/how-to-create-autocomplete-using-angularjs-ui/
http://www.techguides.in/how-to-customize-autocomplete-to-display-multiple-columns-using-angularjs-ui-2/