Javascript SlickGrid-需要不敏感的案例过滤器

Javascript SlickGrid-需要不敏感的案例过滤器,javascript,case-sensitive,slickgrid,case-insensitive,Javascript,Case Sensitive,Slickgrid,Case Insensitive,有没有办法将过滤器从区分大小写改为不区分大小写 谢谢。我猜您正在谈论DataView过滤器,过滤器功能的实现完全取决于您。请注意SlickGrid示例中使用的filter函数-该函数使用dataView.setFilter(此处为您的函数)设置为filter。因此,根据需要实现过滤器功能,并将其设置为dataView假设您正在谈论dataView过滤器,那么过滤器功能的实现完全取决于您。请注意SlickGrid示例中使用的filter函数-该函数使用dataView.setFilter(此处为您

有没有办法将过滤器从区分大小写改为不区分大小写


谢谢。

我猜您正在谈论DataView过滤器,过滤器功能的实现完全取决于您。请注意SlickGrid示例中使用的filter函数-该函数使用dataView.setFilter(此处为您的函数)设置为filter。因此,根据需要实现过滤器功能,并将其设置为dataView

假设您正在谈论dataView过滤器,那么过滤器功能的实现完全取决于您。请注意SlickGrid示例中使用的filter函数-该函数使用dataView.setFilter(此处为您的函数)设置为filter。因此,根据需要实现filter函数,并将其设置为dataView,下面是使用dataView筛选器的工作示例的相关部分。请注意,searchString变量在首次定义值时转换为小写,然后在myFilter函数中将其与小写字符串进行比较

function myFilter(item, args) {
    if (args.searchString != "" && item["FirstName"].toLowerCase().indexOf(args.searchString) == -1 && item["LastName"].toLowerCase().indexOf(args.searchString) == -1) {
        return false;
    }
    return true;
}

....

$("#txtSearch").keyup(function (e) {
    Slick.GlobalEditorLock.cancelCurrentEdit();
    // clear on Esc
    if (e.which == 27) {
        this.value = "";
    }
    searchString = this.value.toLowerCase();
    updateFilter();
});

function updateFilter() {
    dataView.setFilterArgs({
        searchString: searchString
    });
    dataView.refresh();
}

// initialize the model after all the events have been hooked up
dataView.beginUpdate();
dataView.setItems(data);
dataView.setFilterArgs({
    searchString: searchString
});
dataView.setFilter(myFilter);
dataView.endUpdate();

下面是使用DataView过滤器的工作示例的相关部分。请注意,searchString变量在首次定义值时转换为小写,然后在myFilter函数中将其与小写字符串进行比较

function myFilter(item, args) {
    if (args.searchString != "" && item["FirstName"].toLowerCase().indexOf(args.searchString) == -1 && item["LastName"].toLowerCase().indexOf(args.searchString) == -1) {
        return false;
    }
    return true;
}

....

$("#txtSearch").keyup(function (e) {
    Slick.GlobalEditorLock.cancelCurrentEdit();
    // clear on Esc
    if (e.which == 27) {
        this.value = "";
    }
    searchString = this.value.toLowerCase();
    updateFilter();
});

function updateFilter() {
    dataView.setFilterArgs({
        searchString: searchString
    });
    dataView.refresh();
}

// initialize the model after all the events have been hooked up
dataView.beginUpdate();
dataView.setItems(data);
dataView.setFilterArgs({
    searchString: searchString
});
dataView.setFilter(myFilter);
dataView.endUpdate();

假设您正在谈论DataView过滤器,那么过滤器功能的实现完全取决于您。请注意SlickGrid示例中使用的filter函数-该函数使用dataView.setFilter(此处为您的函数)设置为filter。因此,根据您的需要实现过滤器功能,并将其设置为dataView。再次感谢您,伙计!你是最棒的!:)嘿-我给你一个建议-把你的评论转化成一个答案,当我认可你的答案是正确的时候,你会得到分数。然后删除此评论:)&关于我的问题-我如何才能不敏感?我将把dataView字符串小写,这样就不会有任何问题了#思考…是的-使用比较的左侧和右侧的一个大小写(下或上),这样就可以了。您可以使用Javascript原型为此注册一个函数/操作符。如果您在JS代码猜测中经常使用这个函数/操作符,那么您正在谈论DataView过滤器,过滤器功能的实现完全取决于您。请注意SlickGrid示例中使用的filter函数-该函数使用dataView.setFilter(此处为您的函数)设置为filter。因此,根据您的需要实现过滤器功能,并将其设置为dataView。再次感谢您,伙计!你是最棒的!:)嘿-我给你一个建议-把你的评论转化成一个答案,当我认可你的答案是正确的时候,你会得到分数。然后删除此评论:)&关于我的问题-我如何才能不敏感?我将把dataView字符串小写,这样就不会有任何问题了#思考…是的-使用比较的左侧和右侧的一个大小写(下或上),这样就可以了。如果您将在JS代码中经常使用Javascript原型,那么您可以使用Javascript原型为此注册一个函数/运算符。我已经在Git提交给SG存储库进行了此修改。我认为这应该是默认行为,用户希望使用区分大小写的过滤器进行搜索是没有意义的。我已将此修改提交给Git的SG存储库。我认为这应该是默认行为,用户希望使用区分大小写的过滤器进行搜索是没有意义的。