【问题标题】:jQuery selectors : list not inside a divjQuery选择器:列表不在div内
【发布时间】:2014-10-27 17:29:16
【问题描述】:

我的 HTML 结构如下:

<div id='main'>
  <ul>
    <li>1_1</li>
    <li>1_2</li>
    <li>1_3</li>
  </ul>
   <ul>
    <li>2_1</li>
    <li>2_2</li>
    <li>2_3</li>
  </ul>
  <div id='sub1'>
    <ul>
      <li>sub1_1</li>
      <li>sub1_2</li>
      <li>sub1_3</li>
    </ul>
  </div>
  • 使用 jQuery,我试图在“主”div 中获取 ALL li 元素 in ALL ul 的文本,但是 不在“sub1” div 中。

  • '#main' 可以包含单个列表,也可以包含多个列表,也可以不包含。

  • 如果选择器在 Node.js 上与 Cheerio 一起使用,则有好处,但我真正想要的是学习解决该问题的正确方法 :)

  • 如果有人觉得这篇文章需要,我可以添加我失败的尝试。为了避免 tl;dr,假设我对 jQuery 有一定的了解,但我没有尝试过任何工作!

【问题讨论】:

    标签: jquery html cheerio


    【解决方案1】:

    尝试使用child selector,然后使用descendants

    $("#main > ul li")
    

    DEMO

    【讨论】:

      【解决方案2】:

      您可以使用 Jquery 过滤器过滤掉不需要的元素,其中之一是“NOT”过滤器。 使用以下代码:

      $(document).ready(function(){
        $("#main > ul li").not("#sub1").each(function() {
        alert($(this).text());
      
      });
      });
      

      快乐编码:)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-11-30
        • 1970-01-01
        • 2012-10-28
        • 1970-01-01
        • 2012-01-30
        相关资源
        最近更新 更多