2011-10-07 82 views
2

我想檢索.find_class中最後一個子元素(班級末尾div new3)的班級名稱,但我的代碼給了我select3班。我該如何解決它?從div取得班級名稱

演示:http://jsfiddle.net/gBxan/5/

<div class="find_class mediumCell"> 
    <div class="new1 old1"> 
     <div class="select1"></div> 
    </div> 
    <div class="new2 old2"> 
     <div class="select2"></div> 
    </div> 
    <div class="new3 old3"><!-- I want to get this div's class name 'new3' --> 
     <div class="select3"></div> 
    </div> 
</div> 

var find = $('div.find_class div:last').attr('class'); 
alert(find); 

回答

7

使用子選擇器(>):

var find = $('div.find_class > div:last').attr('class'); 

小提琴:http://jsfiddle.net/gBxan/6/
參見:MDN - CSS Selectors

+0

請注意,根據文檔http://api.jquery.com/last-selector/,':last'應通過使用'.filter'或'.last'拆分出來。從外觀上看,在這個例子中,表現並不是一個大問題,但總體來說應該記住。 –

+0

它是如何爲這個html的幾個'find_class',請參閱:http://jsfiddle.net/gBxan/8/ –

+0

@AliciaCibrian請參閱http://jsfiddle.net/gBxan/9/。在JQuery中,上下文應該是第二個參數:'$(「div:last」,this)'。在函數外部創建一個臨時變量,並在其中存儲變量。 –

2
$('.find_class').children(':last').attr('class'); 
+0

它是如何爲這個html找到幾個'find_class',請看:http://jsfiddle.net/gBxan/8/ –