【问题标题】:format json for loading remote data select2用于加载远程数据的格式 json select2
【发布时间】:2016-08-22 15:24:33
【问题描述】:

我尝试在加载远程数据时应用Select2的例子,但不太明白它应该是json格式。

使用这个例子:

    $(".js-data-example-ajax").select2({
  ajax: {
    url: "http://localhost:8081/pruebas/select2/examples/jsondata.php",
    dataType: 'json',
    delay: 250,
    data: function (params) {
      return {
        q: params.term, // search term
        page: params.page
      };
    },
    processResults: function (data, params) {
      params.page = params.page || 1;
      return {
        results: data.items,
        pagination: {
          more: (params.page * 30) < data.total_count
        }
      };
    },
    cache: true
  },
  escapeMarkup: function (markup) { return markup; }, 
  minimumInputLength: 1,
});

我的json格式如下:

[{"id":0,"text":"Wilmer Hilaquita"},{"id":1,"text":"Juana de Arco"}]

当你开始搜索时,ajax 给我发送了这条消息:

GET http://localhost:8081/pruebas/select2/examples/jsondata.php?q=Wil

Json 没有找到任何东西,让我知道发送 json 是否应该将其作为参数接收 $_GET 并使用该参数在 json 中工作,考虑到我的数据高于 60000 条记录

【问题讨论】:

    标签: php jquery ajax select2


    【解决方案1】:

    如果你不需要分页,你可以简化 processResults 函数,并有类似的东西:

    processResults: function (data, params) {
       return  { 
          results: data 
       };
    }
    

    (假设data 是一个具有idtext 属性的对象数组)。如果不是这种情况,您需要在同一个函数中处理您的响应以获得相同类型的数组。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-01-02
      • 2015-05-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-23
      • 2015-11-14
      • 1970-01-01
      相关资源
      最近更新 更多