如何使这个Jquery过滤器不区分大小写?

时间:2015-10-02 12:02:47

标签: jquery html

我正在尝试为html列表框创建一个过滤器。列表框从mysql数据库填充并正确加载所有内容。我有一个我输入的文本框,列表根据输入的内容进行过滤。我真的需要这个不区分大小写。换句话说,如果我输入一个国会大厦A,该函数将返回以capitol A开头的所有条目,我需要它返回所有以a开头的条目而不管大小写。

这是功能

$('#custsearch').keyup(function () {
var valThis = this.value;
    lenght  = this.value.length;

$('.cust').each(function () {
    var text  = $(this).text(),
        textL = text,
        htmlR = '<b>' + text.substr(0, lenght) + '</b>' + text.substr(lenght);
    (textL.indexOf(valThis) == 0) ? $(this).html(htmlR).show() : $(this).hide();
});

});

1 个答案:

答案 0 :(得分:3)

使用 toLowerCase() 将两个值转换为小写,然后比较它们

$('#custsearch').keyup(function() {
  var valThis = this.value,
    length = valThis.length;
  $('.cust').each(function() {
    var $this = $(this),
      text = $this.text(),
      htmlR = '<b>' + text.substr(0, length) + '</b>' + text.substr(lenght);
    (text.toLowerCase().indexOf(valThis.toLowerCase()) == 0) ? $this.html(htmlR).show(): $this.hide();
  });
});