javascript - 选择具有特定锚标记文本的 li 标记
问题描述
我有以下代码:
<ul id="ulId">
<div>
<div>
<li class="cModel" style=""><a href="#">4RUNNER</a></li>
<li class="cModel" style=""><a href="#">86</a></li>
<li class="cModel" style=""><a href="#">AVALON</a></li>
</div>
</div>
</ul>
我想li
使用特定的锚文本添加活动类,例如,我想将活动类添加到锚标签文本为“4RUNNER”的 li 元素。
我已经尝试了以下代码,但它不工作:
$("#ulId li").find('a:contains(4RUNNER)').addClass('active')
解决方案
现在您正在将类添加active
到锚点本身,您需要使用 jQuery 方法parent()
向上到父节点li
然后添加类:
$("#ulId li").find('a:contains(4RUNNER)').parent().addClass('active');
//Or
// $("#ulId li").find('a:contains(4RUNNER)').closest('li').addClass('active');
.active {
background-color: green;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul id="ulId">
<div>
<div>
<li class="cModel active" style=""><a href="#">4RUNNER</a></li>
<li class="cModel" style=""><a href="#">86</a></li>
<li class="cModel" style=""><a href="#">AVALON</a></li>
</div>
</div>
</ul>
推荐阅读
- elasticsearch - ElasticSearch - 将大文本字段排除在所有进程之外,但仍将其返回结果?
- python - 检查python日期列表中的任何日期是否在两个日期列之间
- logging - Ruby on Rails 将 ActiveJob 子类日志写入所需文件
- javascript - 为什么没有出现表格页脚
- tensorflow - Keras - 将多个模型组合成一个模型并使用 predict_prob 计算方差
- java - 在Java中使用父类的类型和子类的实例有什么意义?
- android-studio - Sceneform 资产不显示纹理
- google-analytics - GA BigQuery:使用自定义维度计算浏览量
- c++ - 什么是矢量
它甚至有效吗? - import - 将数据从 excel 导入到 teradata 错误错误代码 3706 Expected something between ')' 和 Insert