Select 2 ajax 调用未填充结果

Select 2 ajax call not populating with results

刚刚从 github 下载了 select2 个文件,最新版本 4.0.3,我想根据我输入的内容填充选项(ajax 请求)

代码如下

$('#usernetwork').select2({
    ajax: {
        url: 'someurl.php',
        dataType: 'json',
        delay: 250,
        data: function (params) {
          return {
            q: params.term, // search term
            page: params.page
          };
        },
        processResults: function (data, page) {

          return data.items;
        },
        cache: false
    },
    minimumInputLength: 1
});

url (someurl.php) 显示此 json 结果

[{"id":"1","text":"ClickWeb"},{"id":"2","text":"ClickWeb 1"},{"id":"3","text":"ClickWeb 2"},{"id":"4","text":"ClickWeb 3"}]

最后 select 字段是这个

<select name="usernetwork" id="usernetwork" class="form-control">
</select>

这是我第一次尝试这个,现在我没有得到任何查询(用于测试目的)

结果没有显示,我不知道如何解决这个问题,有什么提示吗?

试试我的回答,您唯一需要更改的是您在 processResults 回调中的 return 语句,如下所示

return {
          results: data

       };

完整代码如下:

         $('#usernetwork').select2({
                    ajax: {
                        url: 'someurl.php',
                        dataType: 'json',
                        delay: 250,
                        data: function (params) {
                            return {
                                q: params.term, // search term
                                page: params.page
                            };
                        },
                        processResults: function (data, page) {

                             return {
                                results: data

                              };
                        },
                        cache: false
                    },
                    minimumInputLength: 1
                });