javascript 搜索 - 不区分大小写
javascript search - case-insensitive
我无法让此代码不区分大小写。
这个代码是网上找的-(http://jsfiddle.net/bizamajig/radzq2o2/)
$(function(){
// Instantiate MixItUp:
$container = $('.cd-gallery')
$container.mixItUp();
$('#filter').keyup(function(){
var val = $(this).val();
var state = $container.mixItUp('getState');
var $filtered = state.$targets.filter(function(index, element){
return $(this).text().toString().indexOf( val.trim() ) >= 0;
});
$container.mixItUp('filter', $filtered);
});
});
但我似乎无法让此代码不区分大小写。
我尝试过不同的东西 - 但没有任何效果。谁能帮我?
我需要此代码(以上)不区分大小写。
谢谢!
只是改变
return $(this).text().toString().indexOf( val.trim() ) >= 0;
到
return $(this).text().toString().toLowerCase().indexOf( val.trim().toLowerCase() ) >= 0;
注意 toLowerCase() 的使用。在比较它们之前,我们基本上将两个被比较的字符串都转换为小写字母。
您的 fiddle 的一个分支,建议更改:http://jsfiddle.net/kykuwppL/
转换两个字符串 .toLowerCase():
var val = $(this).val().toLowerCase();
return $(this).text().toString().toLowerCase().indexOf(val.trim()) >= 0;
$(function(){
// Instantiate MixItUp:
$container = $('#projects')
$container.mixItUp();
$('#filter').keyup(function(){
var val = $(this).val().toLowerCase();
var state = $container.mixItUp('getState');
var $filtered = state.$targets.filter(function(index, element){
return $(this).text().toString().toLowerCase().indexOf( val.trim() ) >= 0;
});
$container.mixItUp('filter', $filtered);
});
});
我无法让此代码不区分大小写。 这个代码是网上找的-(http://jsfiddle.net/bizamajig/radzq2o2/)
$(function(){
// Instantiate MixItUp:
$container = $('.cd-gallery')
$container.mixItUp();
$('#filter').keyup(function(){
var val = $(this).val();
var state = $container.mixItUp('getState');
var $filtered = state.$targets.filter(function(index, element){
return $(this).text().toString().indexOf( val.trim() ) >= 0;
});
$container.mixItUp('filter', $filtered);
});
});
但我似乎无法让此代码不区分大小写。 我尝试过不同的东西 - 但没有任何效果。谁能帮我?
我需要此代码(以上)不区分大小写。
谢谢!
只是改变
return $(this).text().toString().indexOf( val.trim() ) >= 0;
到
return $(this).text().toString().toLowerCase().indexOf( val.trim().toLowerCase() ) >= 0;
注意 toLowerCase() 的使用。在比较它们之前,我们基本上将两个被比较的字符串都转换为小写字母。
您的 fiddle 的一个分支,建议更改:http://jsfiddle.net/kykuwppL/
转换两个字符串 .toLowerCase():
var val = $(this).val().toLowerCase();
return $(this).text().toString().toLowerCase().indexOf(val.trim()) >= 0;
$(function(){
// Instantiate MixItUp:
$container = $('#projects')
$container.mixItUp();
$('#filter').keyup(function(){
var val = $(this).val().toLowerCase();
var state = $container.mixItUp('getState');
var $filtered = state.$targets.filter(function(index, element){
return $(this).text().toString().toLowerCase().indexOf( val.trim() ) >= 0;
});
$container.mixItUp('filter', $filtered);
});
});