2016-10-21 2 views
1

Я создаю ионный проект, и я пытаюсь интегрироваться с Algolia autocomplete.js. Мне удалось сделать поиск работы системы, однако я добавил нг щелчка на моих результатах поиска и эта функция не работает, как представлена ​​в этом codepen, что я сделал в качестве примера ниже:ng-click не работает с внешним JavaScript

http://codepen.io/marcos_arata/pen/VKVOky

Внутри моих algolia лет шаблон результата:

<a ng-click="add_name({{{ name }}})"> 

Функция, которая должна быть запущена при нажатии:

$scope.add_name = function(name) { 
    alert('User added!'); 
    console.log(name); 
} 

Я попытался придать результаты внутри сферы, но не работает, а также:

autocomplete('#search_name', { hint: false, debug: true, openOnFocus: true },[{ 
    source: index.ttAdapter({ hitsPerPage: 15 }), 
    templates: { 
     header: '', 
     suggestion: function(hit) { 

      $scope.hit = hit; 

      return template.render(hit); 

     } 
    } 
}]); 

http://codepen.io/marcos_arata/pen/VKVOky

---- решаемые ----

Вместо создания нг щелкните функцию внутри ваших шаблонов, вы можете обработайте событие щелчка вашего поиска внутри вашей функции «автозаполнение: выбранный» и используйте данные набора данных и предложения.

.on('autocomplete:selected', function(event, suggestion, dataset) { 

    $scope.name = suggestion.name; 
    console.log($scope.name); 
    ## create any functions with the suggestion and dataset results inside 

}); 
+0

Вы можете сделать, как это:

+0

, щелчок проглатывается событием '.on ('автозаполнение: выбрано'. Я не знаю, почему это так или иначе чтобы исправить это, но я подумал, что, возможно, дополнительная информация может быть полезна. – Claies

ответ

2

РЕДАКТИРОВАНИЕ ОТВЕТ:

Вот это codepen:

Видимо предложение сохранить имя щелкнул, так что вам не нужна дополнительная функция:

.on('autocomplete:selected', function(event, suggestion, dataset) { 

    $scope.name = suggestion.name; 
    console.log($scope.name); 
}); 
+0

Спасибо большое, все работает отлично! Единственная проблема заключается в том, что она выглядит как функция работаю 2 раза. Знаете ли вы, почему? – czmarc

+1

Я постараюсь открыть кодировщик и немного проверить его –

+0

большое спасибо, я бы очень признателен! – czmarc

Смежные вопросы