Refer to the appropriate jsFiddle
Inside this file, I have two tests, test1 and test2. The space 'test2' is shown, but the range under my custom directive 'test1' does not appear at all or is not called to the page. Why?
<div ng-app="HelloApp"> <div ng-controller="MyCtrl"> <search-bar/> <span>test1</span> </div> <span>test2</span> </div>
Angular Code
var app = angular.module('HelloApp', []) app.directive('searchBar', function() { return { restrict: 'AE', replace: true, template: '<input type="text" ng-model="searchData" placeholder="Enter a search" id="searchbarid" />', link: function(scope, elem, attrs) { elem.bind('keyup', function() { scope.$apply(function() { scope.search(elem); }); }); } }; }); app.controller('MyCtrl', function($scope) { var items = ["ask","always", "all", "alright", "one", "foo", "blackberry", "tweet","force9", "westerners", "sport"]; $scope.search = function(element) { $("#searchbarid").autocomplete({ source: items }); }; });
source share