javascript - 通过 jquery 或 spath 选择器从 html 标签列表中选择特定的 html 标签

标签 javascript jquery html xpath

使用这个 html 结构:

...
<div class="a">April 2018</div>
<div class="b">Monday 02</div>
<div class="c">...</div> <!-- I want get this tag (and its children) --> 
<div class="c">...</div> <!-- I want get this tag (and its children) -->
<div class="c">...</div> <!-- I want get this tag (and its children) -->
<div class="c">...</div> <!-- I want get this tag (and its children) -->
<div class="d">...</div>
<div class="b">Monday 02</div>
<div class="c">...</div> <!-- I don't want get this tag ! -->
<div class="c">...</div> <!-- I don't want get this tag ! -->
<div class="c">...</div> <!-- I don't want get this tag ! -->
<div class="c">...</div> <!-- I don't want get this tag ! -->
<div class="d">...</div> <!-- I don't want get this tag ! -->
<div class="b">Monday 02</div>
<div class="c">...</div> <!-- I don't want get this tag ! -->
<div class="c">...</div> <!-- I don't want get this tag ! -->
...

我想将类为“c”的第一个 div 元素的列表保存在数组中,该列表位于类为“d”的第一个 div 元素之前。我如何通过 jquery 选择器或 xpath 选择器来做到这一点?我不知道怎么做..

谢谢:)

最佳答案

  1. 您可以使用.prevAll()
  2. 使用 .eq() 选择第一个类为 d 的元素,然后使用 .prevAll() 获取所有先前的类为 c 的元素

$('.d').eq(0).prevAll('.c').css('color','red')
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="a">April 2018</div>
<div class="b">Monday 02</div>
<div class="c">...</div> <!-- I want get this tag (and its children) --> 
<div class="c">...</div> <!-- I want get this tag (and its children) -->
<div class="c">...</div> <!-- I want get this tag (and its children) -->
<div class="c">...</div> <!-- I want get this tag (and its children) -->
<div class="d">...</div>
<div class="b">Monday 02</div>
<div class="c">...</div> <!-- I don't want get this tag ! -->
<div class="c">...</div> <!-- I don't want get this tag ! -->
<div class="c">...</div> <!-- I don't want get this tag ! -->
<div class="c">...</div> <!-- I don't want get this tag ! -->
<div class="d">...</div> <!-- I don't want get this tag ! -->
<div class="b">Monday 02</div>
<div class="c">...</div> <!-- I don't want get this tag ! -->
<div class="c">...</div> <!-- I don't want get this tag ! -->

关于javascript - 通过 jquery 或 spath 选择器从 html 标签列表中选择特定的 html 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49605986/

相关文章:

javascript - 我是否正确地履行了这些 promise ?

javascript - 引导轮播图像高度

javascript - 如何在按钮:focus by jquery上添加Class()和removeClass()

javascript - JQuery 函数仅打印出未定义

jquery - 使用 jQuery UI 启用在叠加层下方的元素中拖动

javascript - 使用jquery时如何获取HTML5 Canvas ?

asp.net - 在重用和逻辑封装方面使用 ASP.NET 构建 JavaScript UI 代码的最佳方式?

javascript - 其他人如何在实时页面的 DOM 中搜索元素?

javascript - 云标签在固定宽度的div中排序和定位

Javascript:选择任何元素的子元素的语法是什么?