2012-09-30 46 views
-2

可能重複:
Get Class List for Element with jQuery如何獲得跨度類值

我怎樣才能得到一個div內的跨度的類值?

<div id="Check"> 

<span class="checked"> 

<input id="box" name="INbox" type="checkbox" value="1" />1<br> 

<span> 

</div> 

如何從div =「Check」獲取class =「checked」的值?

,並使用它像這樣

<script> 
var span = $('div#Outbound').find('span').attr('class'); 
if (span != "checked"){ 

} 
</script> 
+0

你想做什麼?爲什麼不把類添加到'.find()'選擇器?你期待'.value()'做什麼?沒有這樣的jQuery方法,'.val()'不適用於'span'元素。 –

+1

我建議您在使用方法之前先閱讀文檔,以免浪費時間嘗試。你也會發現沒有名爲'.value'的方法:http://api.jquery.com/?ns0=1&s=.value –

+0

等等,現在你想做一些事,當它沒有類時?我想你應該描述你最終想做的事情。這段代碼讓我強烈地意識到,你正在採取錯誤的方法處理任何實際的問題。 –

回答

1

使用.attr()

var spanClass = $('div#Outbound').find('span').attr('class'); 

或者,如果你只是想確定span有一個名爲checked類,使用.hasClass()

var hasCheckedClass = $('div#Outbound').find('span').hasClass('class'); 
0

你可以使用jQuery hasClass

<script> 

    if (!$('div#Outbound').find('span').hasClass("checked")){ 

    } 
    </script> 
2

而不需要jQuery的:

var span = document.getElementById('Check').getElementsByTagName('span')[0].className; 

或者,如果HTML的格式是可預見的「跨度是div裏面的第一個元素」,那麼你可以欺騙一點:

var span = document.getElementById('Check').children[0].className; 

要檢查類checked是跨度,你可以這樣做:

if(span.match(/\bchecked\b/))