2014-10-26 54 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