将特殊字符折叠添加到列表筛选器

Add special character folding to list filter

本文关键字:列表 筛选 添加 特殊字符 折叠      更新时间:2023-09-26

我想使用list.js来实时过滤列表。http://www.listjs.com/examples

但我需要添加折叠。如果有人输入"á",它应该也找到带有"a"的列表项目。

有什么想法吗?

我可以添加一个隐藏

的范围到没有特殊字符的列表项,然后添加一个隐藏输入,其中包含与用户输入的相同字符串但没有特殊字符,并将其用于列表.js但这似乎不是很好......

或者也许任何具有此功能的类似插件?

不太熟悉这个库,但这可能有效(这是使用您链接到的示例中的代码):

var options = {
  valueNames: [ 'name', 'born' ],
  plugins: (function() {
      options = options || {};
      return {
        init: function(list) {
          // This method is called on initialization
          events.bind(getByClass(list.listContainer, options.searchClass), 'keyup', function(e) {
                    var target = e.target || e.srcElement; // IE have srcElement
                    list.search(target.value);
                });
        },
        name: options.name || "newsearch",
        search: function(str, columns) {
          var combining = /['u0300-'u036F]/g; 
          var new_str = str.normalize('NFKD').replace(combining, '');
          list.search(new_str, columns);
        }
      };
    })()
};
var userList = new List('users', options);