【发布时间】:2015-09-17 19:22:50
【问题描述】:
在这个文件中,我有两个跨度“test1”和“test2”。跨度“test2”正在显示,但我的自定义指令“test1”下的跨度根本没有显示或被调用到页面中。为什么?
<div ng-app="HelloApp">
<div ng-controller="MyCtrl">
<search-bar/> <!-- The Search Bar Directive -->
<span>test1</span>
</div>
<span>test2</span>
</div>
角度代码
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
});
};
});
【问题讨论】:
-
<search-bar></search-bar>似乎对我有用 -
@timeiscoffee 不错。我已经添加了答案的详细版本...
标签: javascript html angularjs dom angularjs-directive