为了账号安全,请及时绑定邮箱和手机立即绑定

如何使jQuery包含不区分大小写的内容,包括jQuery 1.8+?

如何使jQuery包含不区分大小写的内容,包括jQuery 1.8+?

吃鸡游戏 2019-07-25 14:14:49
如何使jQuery包含不区分大小写的内容,包括jQuery 1.8+?我试图不敏感地使用“包含”一词。我尝试在下面的堆栈溢出问题上使用该解决方案,但没有成功:是否有不区分大小写的jQuery:包含选择器?为了方便起见,在这里复制解决方案:jQuery.extend(         jQuery.expr[':'], {                  Contains : "jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase())>=0" });以下是错误:Error: q is not a functionSource File: /js/jquery-1.4.js?ver=1.4Line: 81这里是我使用它的地方:  $('input.preset').keyup(function() {     $(this).next().find("li").removeClass("bold");     var theMatch = $(this).val();     if (theMatch.length > 1){       theMatch = "li:Contains('" + theMatch + "')";       $(this).next().find(theMatch).addClass("bold");     }   });在相同的场景中,我使用了区分大小写的“Content”,没有任何错误。有人有什么想法吗?我会很感激的。
查看完整描述

3 回答

?
小唯快跑啊

TA贡献1863条经验 获得超2个赞

这是我在当前项目中使用的,没有任何问题。看看您在这种格式上是否有更好的运气:

jQuery.expr[':'].Contains = function(a, i, m) { 
  return jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase()) >= 0; };

在jQuery 1.8中,用于此操作的API更改后,jQuery 1.8+版本如下:

jQuery.expr[":"].Contains = jQuery.expr.createPseudo(function(arg) {
    return function( elem ) {
        return jQuery(elem).text().toUpperCase().indexOf(arg.toUpperCase()) >= 0;
    };});

你可以在这里测试..有关1.8+自定义选择器的详细信息,看看这里的Sizzle wiki.




查看完整回答
反对 回复 2019-07-26
?
开心每一天1111

TA贡献1836条经验 获得超13个赞

值得注意的是,答案是正确的,但只涵盖了:Contains,而不是化名:contains这可能导致意外行为(或可用于需要敏感和不敏感搜索的高级应用程序)。

这可以通过重复别名的扩展来解决:

jQuery.expr[':'].Contains = function(a, i, m) { 
  return jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase()) >= 0; };jQuery.expr[':'].contains = function(a, i, m) { 
  return jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase()) >= 0; };

我花了一段时间才弄明白为什么它不适合我。



查看完整回答
反对 回复 2019-07-26
?
jeck猫

TA贡献1909条经验 获得超7个赞

我会做这样的事

     $.expr[':'].containsIgnoreCase = function (n, i, m) {
        return jQuery(n).text().toUpperCase().indexOf(m[3].toUpperCase()) >= 0;
    };

然后离开:contains独自一人.。

演示

那么为什么jQuery在它的库中不支持它呢?!如果有那么简单的话.。

因为你的代码传递火鸡密码了吗?




查看完整回答
反对 回复 2019-07-26
  • 3 回答
  • 0 关注
  • 537 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信