Я использую следующий Javascript для получения данных через PHP ( upload.php ) -
<script src="js/jquery.amsify.suggestags.js"></script>
<script>
fetch('./get_hashtags.php').then(response => {
return response.json();
}).then(data => {
var suggestionsArr = [];
data.forEach(function(item){
suggestionsArr.push(item.category);
});
console.log(suggestionsArr);
$('#inputTags').amsifySuggestags({
suggestions: suggestionsArr,
classes: ['bg-warning','bg-warning'],
});
}).catch(err => {
console.log(err);
});
</script>
get_hashtags.php
<?php
// ... some additional database connection details ...
$statement = $pdo->prepare("SELECT category FROM hashtags where active=1");
$hashtags = array();
if ($statement->execute()) {
while ($row = $statement->fetch(PDO::FETCH_ASSOC)) {
$hashtags[] = $row;
}
}
$pdo = null;
echo json_encode($hashtags);
?>
К сожалению, я получаю следующую ошибку при загрузке страницы -
TypeError: $(...).amsifySuggestags is not a function
at fetch.then.then.data (upload.php:1550)
Это начало jquery.amsify.suggestags.js (https://github.com/amsify42/jquery.amsify.suggestags) -
(function($) {
$.fn.amsifySuggestags = function(options, method) {
/**
* Merging default settings with custom
* @type {object}
*/
var settings = $.extend({
type : 'bootstrap',
tagLimit : 5,
suggestions : [],
classes : [],
backgrounds : [],
colors : [],
whiteList : false,
afterAdd : {},
afterRemove : {},
}, options);
/**
* Initialization begins from here
* @type {Object}
*/
var AmsifySuggestags = function() {
this.selector = null;
this.name = null;
...
Я не получаю сообщение об ошибке при вставке $ ('# inputTags'). AmsifySuggestags вне метода fetch с некоторыми жестко закодированными значениями.
Заранее спасибо!