Jquery 带grep的不区分大小写的indexOf

Jquery 带grep的不区分大小写的indexOf,jquery,Jquery,我在jquery中使用IndexOf和$.grep来搜索值列表。我需要不区分大小写的搜索,但我需要区分大小写。我在StackOverflow上找到了类似的解决方案,但它们并不能满足我的需要。例如,在此链接中找到的任何解决方案都无法解决我的问题: 代码如下: var searchValue = "abc"; var matches = $.grep(listView.dataSource.view(), function (e) { return e.CategoryName.indexO

我在jquery中使用IndexOf和$.grep来搜索值列表。我需要不区分大小写的搜索,但我需要区分大小写。我在StackOverflow上找到了类似的解决方案,但它们并不能满足我的需要。例如,在此链接中找到的任何解决方案都无法解决我的问题:

代码如下:

var searchValue = "abc";    
var matches = $.grep(listView.dataSource.view(), function (e) { return e.CategoryName.indexOf(searchValue) >= 0; });

通常在匹配字符串的情况下,我会强制它使用小写:
str.toLowerCase()

所以你想在两边都这样做:

var searchValue = "abc";    
var matches = $.grep(listView.dataSource.view(), function (e) { return e.CategoryName.toLowerCase().indexOf(searchValue.toLowerCase()) >= 0; });

您也可以使用
toUpperCase()
,但大多数人使用
toLowerCase()

e.CategoryName.toLowerCase().indexOf(searchValue.toLowerCase())
非常感谢。您的解决方案与我上面提到的解决方案(对我来说不起作用)之间的区别是另一个解决方案中的.text()。能够应用相差那么小的答案是编程中的一个关键能力。我认为这是另一个问题的复制品。