Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery列表筛选器不工作(未捕获类型错误:无法读取未定义的属性';3')_Javascript_Jquery - Fatal编程技术网

Javascript jQuery列表筛选器不工作(未捕获类型错误:无法读取未定义的属性';3')

Javascript jQuery列表筛选器不工作(未捕获类型错误:无法读取未定义的属性';3'),javascript,jquery,Javascript,Jquery,我正在运行jquery1.8.0.min.js 当我开始在输入框中键入以筛选列表时,什么也没有发生,在Chrome调试器中,我得到以下错误: 未捕获的TypeError:无法读取未定义的属性“3” 指向该行: jQuery.expr[':'].Contains = function (a, i, m) { return (a.textContent || a.innerText || "").toLowerCase().indexOf(m[3].toLowerCase()

我正在运行jquery1.8.0.min.js

当我开始在输入框中键入以筛选列表时,什么也没有发生,在Chrome调试器中,我得到以下错误:

未捕获的TypeError:无法读取未定义的属性“3”

指向该行:

jQuery.expr[':'].Contains = function (a, i, m) {
            return (a.textContent || a.innerText || "").toLowerCase().indexOf(m[3].toLowerCase()) >= 0;
        };
代码:

我把它改成上面的,现在可以用了


在这里找到:

我相信这只是比赛。我从另一个帖子上拿的。我想做一个不区分大小写的匹配。
(function ($) {
    jQuery.expr[':'].Contains = function (a, i, m) {
        return (a.textContent || a.innerText || "").toLowerCase().indexOf(m[3].toLowerCase()) >= 0;
    };
    function listFilter(list) {
        var input = $('#classroomSearch');
        $(input)
          .change(function () {
              var filter = $(this).val();
              if (filter) {
                  $(list).find("a:not(:Contains(" + filter + "))").parent().slideUp();
                  $(list).find("a:Contains(" + filter + ")").parent().slideDown();
              } else {
                  $(list).find("li").slideDown();
              }
              return false;
          })
        .keyup(function () {
            $(this).change();
        });
    }
    $(function () {
        listFilter($("#filterList"));
    });
}(jQuery));
jQuery.expr[":"].contains = jQuery.expr.createPseudo(function(arg) {
    return function( elem ) {
        return jQuery(elem).text().toUpperCase().indexOf(arg.toUpperCase()) >= 0;
    };
  });