Devbridge自动完成serviceUrl和查找

时间:2016-05-26 16:23:27

标签: javascript jquery autocomplete

问题: 如果我使用serviceUrl,Devbridge自动完成功能正常,但不会对建议列表进行排序,因为我没有在服务器端实现搜索方法。

我更喜欢在客户端使用sort。 look up属性工作正常,但只能使用本地数组。

首先,服务器端使用devbridge建议的json格式返回正确的答案。 所以我实现了获取数据并将其放入数组的函数,然后将其传递给lookup

    var jsonData= (function() {
    var result;
    jQuery.ajax({
        type:'GET',
        url:'index.php?option=com_crowdfunding&format=raw&task=project.loadLocations',
        dataType:'json',
        async:true,
        success:function(data){
            result = data;
        }
    });
    return result;
})();


jQuery('#autocomplete-ajax').autocomplete({
    lookup:jsonData,

我发现问题是脚本在没有来自服务器的数据时进一步执行。我认为属性async:false可以解决我所有的问题,但是我面对的问题是抵达已经折旧了,我不知道如何修复它。

1 个答案:

答案 0 :(得分:0)

试试这个:

$(document).ready(function() {
    var jsonData= (function() {
        var result;
        jQuery.ajax({
            type:'GET',
            url:'index.php?option=com_crowdfunding&format=raw&task=project.loadLocations',
            dataType:'json',
            success:function(data){
               result = data;
            }
        });
        return result;
    });
    jQuery('#autocomplete-ajax').autocomplete({
        lookup:jsonData,
    }
});