主干不敏感搜索

时间:2013-03-26 13:40:20

标签: javascript backbone.js case-insensitive

我有一个与此http://jsfiddle.net/kianoshp/YWSSp/77/

类似的代码

我认为部分必须有变化

$('#filter').on('keyup', function(e) {
        filteredCollection = new FilteredCollection();
        filteredCollection.reset(filterTable(administratorCollection,
    $(e.currentTarget).val()));
        resetTable(filteredCollection);
});

我无法回答如何使搜索案例不敏感。

1 个答案:

答案 0 :(得分:1)

要使搜索不区分大小写,请对搜索词和搜索值进行大写或小写。

在您的代码中:

filterTable = function(collection, filterValue) {
    if (filterValue === "") {
        return collection.toJSON();
    }
    filterValue = filterValue.toLowerCase();
//                            ^^^^^^^^^^^^^
    return collection.filter(function(data) {
        return _.some(_.values(data.toJSON()), function(value) {
            value = (!isNaN(value) ? value.toString() : value.toLowerCase());
//                                                            ^^^^^^^^^^^^^
            return value.indexOf(filterValue) >= 0;
        });
    });
};