小编mic*_*ury的帖子

select2 使用查询词过滤本地 JSON 数据结果

我正在实施 select2 版本 3.5.0。我在我的文档就绪函数中使用了以下 jQuery:

jQuery.getJSON('/rest/call/to/retrieve/JSON').done(
  function( data ) {
     jQuery('#byProductName').select2({
         placeholder: 'Type any portion of a single product name...',
         allowClear: true,
         minimumInputLength: 0,
         multiple: true,
         id: function(data){ return data.product; },
         data: data,
         formatResult: function(data){ return data.product; },
         formatSelection: function(data){ return data.product; },
     });
  }
);
Run Code Online (Sandbox Code Playgroud)

HTML 隐藏输入元素:

<div id='freeForm'>
    <input name='Search Products' type='hidden' id='byProductName'>
</div>
Run Code Online (Sandbox Code Playgroud)

JSON 结果:

[{"product":""},{"product":" windows"},{"product":" mac"},
 {"product":" linux"},{"product":" RHEL"},{"product":"Test product list"}]
Run Code Online (Sandbox Code Playgroud)

下拉列表正确填充了我的值,我可以选择多个项目并成功删除它们。但是,当我在输入字段中键入字符串以过滤结果集时,它不会进行过滤。

我尝试将数据更改为:

data: function (data, term){
    return { 
        results: data,
        query: term }
    }, …
Run Code Online (Sandbox Code Playgroud)

json local filter jquery-select2

5
推荐指数
1
解决办法
2万
查看次数

标签 统计

filter ×1

jquery-select2 ×1

json ×1

local ×1