即使正确的JSON格式,Select2也不会显示AJAX结果

时间:2014-06-05 13:54:02

标签: javascript jquery ajax json jquery-select2

这是我的代码:

$('.selecter_test').select2(
            {
                placeholder: 'Enter a username...',
                minimumInputLength: 0,
                allowClear: true,
                ajax: {
                    quietMillis: 200,
                    url: "/ajax/test",
                    dataType: 'jsonp',
                    data: function (term, page) {
                        return {
                            q: term
                        };
                    },
                    results: function (data, page) {

                        return { results: data.Results};
                    }

                }
            });

在后端,我加载一个带有id和name的数组,并返回json_encode函数。我的AJAX呼叫响应看起来像这样(在网络/响应标签下的Chrome中查看):

[{"id":4017,"text":"10anabanana10"},{"id":4813,"text":"adria14na.bbb@gmail.com"}... ]

然而,我的Select2只是一直显示“正在搜索...”文本并且不显示任何内容。我听说我不需要使用formatResult和formatSelectin函数,因为我使用常规格式。

1 个答案:

答案 0 :(得分:0)

我通过将datatype参数更改为json而不是jsonp来修复它。在Stackoverflow上的其他地方找到答案。乔恩有一个好主意。