我需要在页面中找到并隐藏所有li标签,这些标签的部分类别为“fos-crs - ”。
<li class="minimal-product-wrapper toggle-container fos-crs-XXX">...<li>
其中XXX是来自数据库调用的一些课程代码。 “fos-crs”类是我添加的类,因此我可以专门查找和操作这些特定的li标签。 li标签中的其他类是使用Foundation的场外开发人员创建的工作的一部分。在其他领域,这些对我的JQuery来说不是问题。
我试过了:
$('[class^="fos-crs-"]').hide();
... and ...
$('li[class^="fos-crs-"]').hide();
有人会指导我吗?非常感谢。
答案 0 :(得分:1)
您的目标是starts with
(^)运算符的类。相反,您应该使用any occurrence
(*)进行定位。
即,
$('li[class^="fos-crs-"]').hide();
应该是
$('li[class*="fos-crs-"]').hide();
答案 1 :(得分:1)
属性选择器查看整个属性,而不是属性中的每个类。所以你的代码正在寻找的是class属性以“fos-crs”开头的元素。您需要检查该字符串是否包含在属性中,因此您需要*
修饰符。
$('li[class*="fos-crs-"]').hide();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
<li class="minimal-product-wrapper toggle-container fos-crs-XXX">...<li>
<li class="minimal-product-wrapper toggle-container fos-crs-XXX">...<li>
<li class="minimal-product-wrapper toggle-container fos-crs-XXX">...<li>
<li class="minimal-product-wrapper toggle-container">...<li>
</ul>