如何使用AJAX调用中的数据

时间:2018-10-14 09:07:12

标签: javascript jquery ajax

我有以下JQuery AJAX调用,该调用成功从数据库返回了数据-

$.ajax({
   url : 'get_hashtags.php',
   type : 'GET',
   success : function(data){
      var obj = jQuery.parseJSON(data);
      console.log(obj);
   }
});

这是返回的数据-

(2) [{…}, {…}]
0
:
{category: "ht.austria"}
1
:
{category: "ht.landscapes"}
length
:
2
__proto__
:
Array(0)

现在,我想使用从数据库返回的数据作为以下Javascript代码中的建议。因此,应该使用数据库返回的数据代替ht.austria这样的“建议”。

$('#inputTags').amsifySuggestags({
    suggestions: ['ht.austria','ht.landscape'],
    classes: ['bg-warning','bg-warning'],
});

很遗憾,我不确定如何执行此操作。我曾尝试在Ajax调用的成功部分中调用函数,但是收到amsifySuggestags的错误消息不是函数。有人可以帮忙吗?

更新

我现在已经尝试使用Shiv建议的以下代码,但是仍然出现错误-

$.ajax({
   url : 'get_hashtags.php',
   type : 'GET',
   success : function(data){
      var obj = jQuery.parseJSON(data);
      console.log(obj);
      var suggestionsArr = []; 

      obj.forEach(function(item){ 
        suggestionsArr.push(item.category) 
      });

      createHashtags(suggestionsArr);
   }
});

function createHashtags(data)
{
    $('#inputTags').amsifySuggestags({
        suggestions: data,
        classes: ['bg-warning','bg-warning'],
    });
}

这是我遇到的错误-

Uncaught TypeError: $(...).amsifySuggestags is not a function
at createHashtags (upload.php:1557)
at Object.success (upload.php:1551)
at i (VM392 jquery-3.2.1.min.js:2)
at Object.fireWith [as resolveWith] (VM392 jquery-3.2.1.min.js:2)
at A (VM392 jquery-3.2.1.min.js:4)
at XMLHttpRequest.<anonymous> (VM392 jquery-3.2.1.min.js:4)

1 个答案:

答案 0 :(得分:0)

通过循环category提取obj数据并将其推入数组并使用。

查看代码段。

var obj = [
  {category: "ht.austria"},
  {category: "ht.landscapes"}
];

var suggestionsArr = [];

obj.forEach(function(item){ 
  suggestionsArr.push(item.category) 
});


console.log('suggestionsArr : ', suggestionsArr);


   /* $('#inputTags').amsifySuggestags({
    suggestions: suggestionsArr,
    classes: ['bg-warning','bg-warning'],
}); */