Jquery 带grep的不区分大小写的indexOf
我在jquery中使用IndexOf和$.grep来搜索值列表。我需要不区分大小写的搜索,但我需要区分大小写。我在StackOverflow上找到了类似的解决方案,但它们并不能满足我的需要。例如,在此链接中找到的任何解决方案都无法解决我的问题: 代码如下:Jquery 带grep的不区分大小写的indexOf,jquery,Jquery,我在jquery中使用IndexOf和$.grep来搜索值列表。我需要不区分大小写的搜索,但我需要区分大小写。我在StackOverflow上找到了类似的解决方案,但它们并不能满足我的需要。例如,在此链接中找到的任何解决方案都无法解决我的问题: 代码如下: var searchValue = "abc"; var matches = $.grep(listView.dataSource.view(), function (e) { return e.CategoryName.indexO
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()。能够应用相差那么小的答案是编程中的一个关键能力。我认为这是另一个问题的复制品。