2010-10-08 146 views
17

如何獲取嵌套元素「4」?jquery嵌套選擇器

我想:

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> 

回答

21

使用.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()

+0

啊,是的......我知道這是這麼簡單的東西我的腦子要爆炸。謝謝。 – holden 2010-10-08 12:33:43

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

但不

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

因爲 後代選擇: 元素的後代可能是一個孩子,孫子,曾孫等,該元素的。 子選擇器: 選擇由「父」指定的元素的「子」指定的所有直接子元素。

參考child selector descendant selector