2011-11-10 34 views
2

(排序從有人認爲是比較習慣的Flash/ActionScript中是如何工作的新手問題的。)jQuery的click處理程序通過事件對象,讓複選框狀態

給定一個複選框和jQuery的點擊(),我該怎麼辦以下內容:

$('#myCheckBox').click (function(event) { 
    checkboxState = event.target.attr("checked"); 
    // now do something with checkboxState 
} 

也就是說,我想獲得的複選框匿名函數中選中屬性,因爲這是似乎最有意義的模式,但是我不知道如何可以做到這一點。

謝謝。

回答

3

.attr()需要調用一個jQuery對象:

checkboxState = $(event.target).is(':checked'); 

或者你可以使用this

checkboxState = $(this).is(':checked'); 

is(':checked')返回真/假取決於複選框的狀態

http://api.jquery.com/is/

http://api.jquery.com/checked-selector/

+0

+1:我絕對贊成'$(this).is(「:checked」)'。另一種方式看起來很有趣,因此我不喜歡它;) –

1

使用本:

$('#myCheckBox').click (function(e) { 
    checkboxState = $(this).is(':checked'); 
} 
1
checkboxState = $(this).is(":checked"); 
1

fiddle不是一個確切的答案,但這個問題的解決方案。

請注意,我正在使用匿名函數中的this調用powBlam()函數。在這種情況下,this是被選中的複選框。