2014-10-26 38 views
0

這裏是我的代碼:大小()函數不與JS選擇/是

<input type="checkbox"> a<br /> 
<input type="checkbox"> b<br /> 
<input type="checkbox"> c<br /> 
<button>Size</button> 

<script> 
$('button').click(function() { 
    alert($('input').is(':checked').size()); 
}); 
</script> 

JS提琴:http://jsfiddle.net/a8f7stx5/

當我點擊「尺寸」按鈕,我得到一個「遺漏的類型錯誤:未定義不是函數「錯誤。有任何想法嗎?

回答

2

$('input').is(':checked')將基於複選框值返回標誌true false並使用方法.size()將在bool值上返回undefined(您可以在控制檯中看到錯誤)。

也使用.length代替.size()如尺寸在1.8版本已棄用:

$('input:checked').size() 

Working Demo

+1

,或者優選'length'。 – lonesomeday 2014-10-26 16:39:20

+0

@lonesomeday:確實...... :) – 2014-10-26 16:44:50

1
.is()

返回的元素是否滿足選擇一個布爾值。嘗試使用.filter()代替:

alert($('input').filter(':checked').size()); 
0

.length屬性是優選的方式:

$('input:checked').length; 

DEMO