我在jquery-ui自动完成的自动完成angularjs指令传递动态数据时遇到了麻烦。这里是我当前的代码:动态自动完成指令
HTML:
<div ng-app="peopleApp">
<div ng-controller="indexController">
<label class="input-group-addon input-label">Search:</label>
<input class="form-control input-form" id="search" type="text" placeholder="Search here..." auto-complete names="names">
<button ng-click="change()">Change</button>
</div>
</div>
JS:
所有的数据var peopleApp = angular.module('peopleApp', []);
peopleApp.controller('indexController', function($scope, $http, $rootScope, $controller){
$http.post(domainName+url)
.then(function(response){
data = response.data.data;
$scope.names = data.map(function(obj){ var rObj = []; rObj.push(obj['rank_code']); rObj.push(obj['rank_description']); return rObj; });
});
$scope.change = function(){
$scope.names = ["hnnnnn", "billlll"];
}
});
peopleApp.directive('autoComplete', function(){
return {
scope: {names: '='},
link: function(scope, element, attrs){
// alert(JSON.stringify(element));
attrs.$observe('names', function(val){
// scope.info = val;
alert(val);
scope.names = val;
});
element.autocomplete({
source: scope.names,
select: function() {
// alert('dean');
// iElement.trigger('input');
},
// Sets the min of characters before activating dropdown
minLength:2
});
}
}
});
首先是获取从API不会自动完成整合。第二我希望当我按下一个按钮时,将改变的$ scope.names也将被集成到自动完成功能中
不要'jquery'用'angular'混库。原则上可以这样做,但有时候更容易找到'angular'的库。像这样[ngAutocomplete](http://ngmodules.org/modules/ngAutocomplete) –
那么你有源动态或不动态的解决方案吗? –
存在动态源使用的解决方案。例如[角度绑带头](http://mgcrea.github.io/angular-strap/#/typeaheads)。 –