我想使用list.js实时过滤列表。 http://www.listjs.com/examples
但我需要添加折叠。如果有人输入'á',它也会找到带有'a'的列表项。
有什么想法吗?
我可以在没有特殊字符的情况下为列表项添加隐藏的跨度,然后是一个隐藏的输入,其中包含用户输入的相同字符串,但没有特殊的字符,并使用list.js,但这看起来不是很好..
或者是否有任何类似的插件具有此功能?
答案 0 :(得分:0)
不熟悉这个库,但这可能有用(这是使用您链接的示例中的代码):
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);