jquery选择器包含等号

前端之家收集整理的这篇文章主要介绍了jquery选择器包含等号前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用jQuery选择器来检查href中的字符:
var param = "something";
$("a[href*="+param+"]").css("color","red");

这工作正常,直到“某事物”包含=符号.例如:

var param = "xkey=123";
$("a[href*="+param+"]").css("color","red");

然后我没有结果.有人知道解决方案吗?

解决方法

您需要转义=字符,因为它在jQuery selector中使用时具有特殊含义.以下是需要转义的所有字符的完整列表:
#;&,.+*~':"!^$[]()=>|/

因此,您可以使用以下命令来转义参数:

param.replace(/([ #;&,.+*~\':"!^$[\]()=>|\/@])/g,'\\$1')

来自jQuery documentation

If you wish to use any of the Meta-characters ( such as
!”#$%&'()*+,./:;<=>?@[]^`{|}~ ) as a literal part of a name,you must
escape the character with two backslashes: \.

这是DEMO.

猜你在找的jQuery相关文章