微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何仅在下一个相同标签之前获取元素?

如何解决如何仅在下一个相同标签之前获取元素?

我有包含类似内容的 HTML 文件

<h1>AAA</h1>
   <h2>part1</h2>  
     <ul>
       <li>ap1-1</li>
       <li>ap1-2</li>
     </ul>
   <h2>part2</h2>
     <ul>
       <li>ap2-1</li>
       <li>ap2-2</li>
     </ul>

<h1>BBB</h1>
   <h2>part1</h2>  
     <ul>
       <li>bp1-1</li>
       <li>bp1-2</li>
     </ul>
   <h2>part2</h2>
     <ul>
       <li>bp2-1</li>
       <li>bp2-2</li>
    </ul>

“part1”和“part2”可能不存在或交换了位置。

我想得到下一个列表:

  <ul>
       <li>ap2-1</li>
       <li>ap2-2</li>
  </ul>

我尝试使用类似的选择查询

document.select("h1:contains(AAA) ~ h2:contains(part2) + ul > li")

但结果还包括来自 BBB 的项目 - 部分:“bp2-1”和“bp2-2”。 如何避免 BBB 部分的项目?

解决方法

<ul id="ul">
       <li>bp1-1</li>
       <li>bp1-2</li>
</ul>
document.getElementById("ul").innerHTML

关于 getElementById() 的资源:

https://developer.mozilla.org/en-US/docs/Web/API/Document/getElementById

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。