问题描述
<!DOCTYPE html>
<head>
<meta charset="utf-8">
<script src="https://cdn.bootcss/jquery/3.4.1/jquery.min.js"></script>
</head>
<body>
<ul>
<li>北京</li>
<li>上海</li>
<li>广州</li>
<li>深圳</li>
</ul>
</body>
</html>
我想选择文本为【广州】的li,$("li[text='广州']")
是不行的,因为CSS选择器只针对CSS,不能访问文本
解决方案
- 手动加id或class或自定义attribute(不方便)
- 使用jQuery的
:contains()
<!DOCTYPE html>
<head>
<meta charset="utf-8">
<script src="https://cdn.bootcss/jquery/3.4.1/jquery.min.js"></script>
</head>
<body>
<ul>
<li>北京</li>
<li>上海</li>
<li>广州</li>
<li>深圳</li>
</ul>
<script>
console.log($("li:contains('广州')").text());
</script>
</body>
</html>
参考文献
- :contains() Selector
- CSS 选择器 | 菜鸟教程
更多推荐
jQuery根据文本内容text进行选择
发布评论