title: $watch does not fire autocomplete ng-model
body: <p>I have small portion of codes with <code>$watch</code> but does not fire when a use input with autocomplete ( jQuery plugin). it only fires when manual typing input</p>
  
  <pre><code>app.directive("autoCode", ['elementData', function(elementData) {
      var codes = elementData.map(function(ele){
          return ele.Code;
      });     
      return {
       restrict: 'A',
       scope:{        
       },  
        link: function(scope, element, attrs) {     
          $(element).autocomplete({source:[codes]});      
      }};
  }]);
  
  app.controller('transactionCtrl',['$scope','elementData', function($scope, elementData){
      var names = elementData.map(function(ele) {
          return ele.Name;
      }),
      codes = elementData.map(function(ele) {
          return ele.Code;
      });
  
      $scope.$watch('code', function(codeValue){
          console.log(codeValue);
  
      }); 
  }]);
  </code></pre>
  
  <p>below is html:</p>
  
  <pre><code> &lt;form &gt;
  
      Code: &lt;input type="text" name="code" auto-code ng-model="code"&gt;
      Name: &lt;input type="text" name="name" auto-name ng-model="name"&gt;
  
      &lt;/form&gt;
  </code></pre>
  
  <p>How to make it work with manual typing and autocomplete?</p>