代码之家  ›  专栏  ›  技术社区  ›  holden

jquery嵌套选择器

  •  18
  • holden  · 技术社区  · 14 年前

    如何获取嵌套元素“4”?

    我试过:

    var nights = $("div.nights h5 div.num").val();
    

    以及:

    var nights = $("div.nights > h5 > div.num").val();
    

    例子:

    <div class="nights">
            <h5 class="biguns">
                <div class="num">4</div>
                Nights
            </h5>
    </div>
    
    2 回复  |  直到 11 年前
        1
  •  24
  •   Nick Craver    14 年前

    使用 .text() 取而代之,像这样:

    $("div.nights h5 div.num").text()
    //or this works too:
    $("div.nights > h5 > div.num").text()
    //or just
    $("div.num").text();
    

    You can test it here ,如上所示,选择器是灵活的,使用对整个标记起作用的内容。 .val() 用于输入类型元素,例如。 <input> , <select> , <textarea> , <button> …若要获取任何其他元素中的文本,请使用 .text() 相反。

        2
  •  3
  •   王奕然    11 年前
    $("div.nights  div").text()
    

    但不是

    $("div.nights  > div").text()  
    

    因为 后代选择器: 元素的后代可以是该元素的子、孙、曾孙等等。 子选择器: 选择由“父”指定的元素的“子”指定的所有直接子元素。

    参考 child selector descendant selector