原答案
你可以做一些简单的部分检查
$('[class^="value"]') <-- starts with string
$('[class$="value"]') <-- ends with string
$('[class~="value"]') <-- I believe this is the contains string version
$('[class*="value"]') <-- is what you would use to match an element containing the given substring
附加信息
您可以参考https://api.jquery.com/category/selectors/以获取有关 api 有解释的某些选择器的一些文档。但是,我将在此处包括其中的一些。
console.log( $('[class^="test"]').get() );
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="test1 example1"></div>
<div class="example2 test2"></div>
此选择器将查找具有以文本开头的属性的元素。请注意,结果不包括这两个元素。这是因为第二个的文字类属性不是以 test 开头的。它从示例开始。开头选择器不会针对属性中的每个单词进行评估。它会关闭整个属性值。
console.log( $('[class$="t2"]').get() );
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="test2 example1"></div>
<div class="example2 test2"></div>
对带有选择器的末端执行类似的操作。整个属性值是针对条件而不是每个类进行评估的。
console.log( $('[class*="test"]').get() );
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="test1 example1"></div>
<div class="example2 test2"></div>
包含字符串版本会在属性中的任何位置查找字符串的存在,无论它是部分值还是完整值。
console.log( $('[class~="test"]').get() );
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="test1 example1"></div>
<div class="example2 test2"></div>
<div class="example test"></div>
contains 词选择器类似于 contains 文本选择器,只有一个区别。文本必须是整个单词,而不是部分文本。因此,它会在值中查找两边都有空格的字符串,除非它位于值的开头或结尾,否则在另一侧有一个空格以使其成为非部分值。