Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Ajax select2示例_Javascript_Jquery_Json_Ajax_Select2 - Fatal编程技术网

Javascript Ajax select2示例

Javascript Ajax select2示例,javascript,jquery,json,ajax,select2,Javascript,Jquery,Json,Ajax,Select2,我需要通过ajax下载Select2组合框中的城市名称,但到目前为止还没有成功。网络搜索中有很多例子,但也不太了解 $(document).ready(function() { var url = "http://localhost:8000/api/city?"; $("#city").select2({ minimumInputLength: 1, ajax: { url: url, dataTy

我需要通过ajax下载Select2组合框中的城市名称,但到目前为止还没有成功。网络搜索中有很多例子,但也不太了解

$(document).ready(function() {
    var url = "http://localhost:8000/api/city?";
    $("#city").select2({
        minimumInputLength: 1,
        ajax: {
            url: url,
            dataType: 'json',
            type: "GET",
            delay: 500,
            data: function (term) {
            return {
                city: term
            };
        },
        results: function (data) {
            console.log(data);
            return {
                results: $.map(data, function (item) {
                    return {
                        text: item.text,
                        id: item.id
                    }
                })
            };
        }
    }
});
});
我希望你能为我提供咨询服务:

[{ "id": 1, "text": "Capital, Córdoba, Argentina" }]
Dice“搜索…”y luego“未找到结果”


真的,谢谢

首先,如果您使用的是Select2 version 4+,请确保在
元素上初始化Select2(),否则他的许多功能(如AJAX)将被关闭

Select2需要您的服务器提供格式化的答案:
http://localhost:8000/api/city?

服务器返回的响应应如下所示:

[
{id:1,文本:'city1'},
{id:2,文本:'city2'},
]
选择:
minimumInputLength=0
,将使其在单击时加载整个列表
minimumResultsForSearch
,控制需要将搜索框显示到select2列表中的结果数量

ajax{data:function(param)}
是一个调用的函数,用于将用户数据格式化为服务器可以理解的格式,您在这里返回的内容将发送到您的
{ajax:url}

ajax{processResults:function(data,status)}
,当您的ajax从服务器获得成功响应时,将调用此函数,
data
将是您的服务器的响应这是您必须确保
data
格式如select2所需的最后一次机会,请参阅本文顶部。您在此处返回的内容是发送至select2


希望能有帮助

在我的母语中,我很怀念SO:-(因为有人翻译成英语。“这是我的服务器在完成查询时返回的json(不确定最后一部分)”…“它说搜索…然后没有找到结果”你确定url=“?”;正在工作?您使用的是哪个版本的
select2
?另外,发布
#city
元素的html。