У меня возникли проблемы с передачей динамических данных по моей автозаполненной директиве angularjs, которая сделана из автозаполнения jquery-ui. Вот мой текущий код:Директива Dynamic Autocomplete
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'. В принципе это возможно, но иногда легче найти библиотеку для «углового». Как это [ngAutocomplete] (http://ngmodules.org/modules/ngAutocomplete) –
У вас есть решение по динамическому источнику или нет? –
Решение, используемое динамическим источником, существует. Например [головка с угловым ремнем] (http://mgcrea.github.io/angular-strap/#/typeaheads). –