0
我试图在搜索上创建一个建议下拉菜单(类似于google的)。我想做一个ajax调用,这将调用一些PHP并返回一个数组,这将是建议。这里是我到目前为止的代码:为什么我不能在我的ajax方法后调用我的jquery自动完成功能
*注:我还没有实现我的PHP呢,所以我只是假装我的AJAX成功并返回一个数组称为availableTags:
$(function(){
var timer;
var availableTags;
var getSuggestions = function() {
$.ajax(
{
url: 'http://localhost/test.php',
type: 'GET',
success: function(output)
{
alert('Success from ajax! ' + output);
availableTags = [ "Hello", "Hey"];
}
}
).done(function(data) {
$("#f").autocomplete({
source: availableTags
});
});
}
$('#f').keyup(function() {
clearTimeout(timer);
timer = setTimeout(getSuggestions, 300);
});
});
我的问题是,即使我使用.done来加载自动完成,它不会显示建议下拉菜单。我知道我的ajax函数工作正常,因为我在其他地方使用过它。是否有另一种方法可以调用自动完成功能?
所以要进一步澄清 - 我正在寻找一种方法来手动加载我的ajax后的自动完成。这可能吗?
为什么不创建它的成功,函数 – 2014-10-17 23:08:12
我只想更换'.done()'和'.success()'并将'success'属性和'.done()'方法的逻辑合并到一个地方。 [像这个JSFiddle](http://jsfiddle.net/za3h9bbd/)。 – Sam 2014-10-17 23:09:07
这就是我一开始就想到的。但我得到同样的问题。自动完成不显示。感谢您的回应 – 2014-10-17 23:10:30