首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在jQuery中选择两个标签之间的所有内容

如何在jQuery中选择两个标签之间的所有内容
EN

Stack Overflow用户
提问于 2009-01-26 19:47:16
回答 6查看 35.6K关注 0票数 60

我有一个带有标题和无序列表的文档。

如何使用JQuery选择给定的标题(通过其惟一的类名)以及该标题和下一个标题之间的所有内容?

更新:

你的建议很棒,但不是我想要的。例如,在下面的代码中,我只想访问id为"heading2“的"h1”和之前的所有内容,但不包括id为"heading3“的"h1”。

上面提供的jQuery示例将访问第一个不是"h“标记的"h”标记之后的所有内容。

..。或者,如果我错了,请纠正我:)

代码语言:javascript
复制
    <h1 id="heading1">...</h1>
        <ul>...</ul>
        <p>...</p>
        <ul>...</ul>
        <p>...</p>
    <h1 id="heading2" >...</h1>
        <ul>...</ul>
        <p>...</p>
        <ul>...</ul>
        <p>...</p>
    <h1 id="heading3" >...</h1>
        <ul>...</ul>
        <p>...</p>
        <ul>...</ul>
        <p>...</p>
EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2009-01-26 21:50:27

有两种方法对解决这个问题特别有用:.nextUntil.andSelf。第一个方法将获取选择器后面的所有兄弟项,而后者也将包含与选择器匹配的所有内容,从而为您提供一个包含它们的jQuery对象:

代码语言:javascript
复制
$("#heading2")
    .nextUntil("#heading3").andSelf()
        .css("background", "red");

这将导致以下结果:

票数 73
EN

Stack Overflow用户

发布于 2010-04-06 01:30:19

代码语言:javascript
复制
$('#secondSelector').prevAll('#firstSelector ~ *')
票数 4
EN

Stack Overflow用户

发布于 2009-01-27 00:03:43

是啊,你说得对。这只会避开所需的选择器。也许它需要更详细:

代码语言:javascript
复制
$(firstSelector).nextAll().not(secondSelector).not($(secondSelector).nextAll()).text()
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/481076

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档