选中了多少个复选框

时间:2010-06-24 20:16:48

标签: javascript-events javascript

我在文档上有检查按钮。

<input type="checkbox" id="CustmerRequested"/>

我想知道文档中有多少个框被选中。

我尝试alert(document.all.CustmerRequested.checked.length);,但未说明。

如何查看检查了多少个盒子?

3 个答案:

答案 0 :(得分:5)

如果您开始构建一个需要这种浏览器端编程的网站,我建议您查看jQuery。请参阅此处获取教程:http://docs.jquery.com/Tutorials

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
    $(function() {
        $("#someButton").click(function() {
            var checkedBoxes = $("#yourForm input:checked");
            alert(checkedBoxes.length + " checked.");
        });
    });
</script>

答案 1 :(得分:3)

使用像Prototype或JQuery这样的Javascript框架来查找需要检查的元素,例如:在原型:

var inputs = $$('input');

这个返回的数组然后可以循环以计算被选中的输入数量复选框,如下所示:

for (var i=0; i<inputs.length; i++){
    if (inputs[i].type == 'checkbox' && inputs[i].checked) {
        numChecked++;
    }
}

答案 2 :(得分:0)

是的,您可以使用JavaScript执行此操作。不,你不需要jQuery。

这是一种方式:

function howManyAreChecked()
{
one = document.getElementById("one").checked;
two = document.getElementById("two").checked;
three= document.getElementById("three").checked;

var checkCount = 0;
if ( one == true )
  { checkCount = checkCount + 1 }
if ( two == true )
  { checkCount = checkCount + 1 }
if ( three == true )
  { checkCount = checkCount + 1 }

alert(checkCount);
}

上面的示例假设您在HTML中有3个复选框,其中id为“one”,“two”和“three”。该脚本首先存储“checked”属性的值,该属性可以是TRUE或FALSE。然后脚本查看每个不同的变量,如果为TRUE,则递增计数器。