如何让AJAX与select2一起使用?

时间:2017-03-01 05:01:17

标签: jquery ajax jquery-select2 select2

我是AJAX的新手,我正试图在select2中从AJAX请求中获得结果。

这是我的HTML:

<select class="js-example-basic-single" name="Airport"><option disabled selected>Airport</option></select>

这是我的select2电话:

$(function() {
    initAirportList = function(){
        $(".js-example-basic-single").select2({
          // minimumInputLength: 2,
          ajax: {
            dataType: 'json',
            type: "GET",
            url: 'data',
            delay: 250,
          }
        ,});
    }

    initAirportList();
});

JSON数据在这里:

[
{id:'ADL',text:'Adelaide, Australia, ADL'},
{id:'MEL',text:'Melbourne, Australia, MEL'},
{id:'PER',text:'Perth, Australia, PER'},
{id:'SYD',text:'Sydney, Australia, SYD'}
]

我应该在select2开始的代码中添加什么来显示结果?

谢谢!

1 个答案:

答案 0 :(得分:0)

首先看一下文档。介绍了如何从远程资源加载数据。

https://select2.github.io/examples.html#data-ajax

https://select2.github.io/options.html#ajax

我认为,你在初始化中缺少一些选项。 您必须在data请求中添加ajax选项:

  ajax: {
        dataType: 'json',
        type: "GET",
        url: 'data',
        delay: 250,
        data: function (params) {
           return {
              q: params.term, // search term
              page: params.page
           };
        }