jQuery找不到带有“ +”的类

时间:2019-01-23 03:25:48

标签: javascript jquery

我有"+"字符串这些类,例如。 crg-th-post-gsm+bb-sub-sub-all-programs,但是问题是当我尝试$('.crg-th-post-gsm+bb-sub-sub-all-programs')时,jquery似乎找不到它,因为我尝试在没有"+"的情况下测试它的'+'效果很好。如何使其与"+"一起使用?有办法吗?

我还可以想到的另一种解决方法是使用.replace替换字符串“ +”,但是当我使用string.replace(/+/g,'-')时,它无法识别。

2 个答案:

答案 0 :(得分:3)

使用escapeSelector doc

console.log($('.' + $.escapeSelector("crg-th-post-gsm+bb-sub-sub-all-programs" )).text());
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="crg-th-post-gsm+bb-sub-sub-all-programs">TEXT</div>

答案 1 :(得分:1)

您需要使用+转义\\

$('.crg-th-post-gsm\\+bb-sub-sub-all-programs').text( 'Hello there' );
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="crg-th-post-gsm+bb-sub-sub-all-programs"></div>